linear_algebra.determinant ⟷
Mathlib.LinearAlgebra.Determinant
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)
@@ -559,6 +559,11 @@ lemma basis.det_reindex {ι' : Type*} [fintype ι'] [decidable_eq ι']
(b.reindex e).det v = b.det (v ∘ e) :=
by rw [basis.det_apply, basis.to_matrix_reindex', det_reindex_alg_equiv, basis.det_apply]
+lemma basis.det_reindex' {ι' : Type*} [fintype ι'] [decidable_eq ι']
+ (b : basis ι R M) (e : ι ≃ ι') :
+ (b.reindex e).det = b.det.dom_dom_congr e :=
+alternating_map.ext $ λ _, basis.det_reindex _ _ _
+
lemma basis.det_reindex_symm {ι' : Type*} [fintype ι'] [decidable_eq ι']
(b : basis ι R M) (v : ι → M) (e : ι' ≃ ι) :
(b.reindex e.symm).det (v ∘ e) = b.det v :=
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
ι an explicit arg of alternating_map.const_of_is_empty (#19123)
While for general multilinear maps one can deduce it from the type of E : ι -> Type*, this doesn't work for alternating maps.
@@ -480,7 +480,7 @@ lemma basis.det_apply (v : ι → M) : e.det v = det (e.to_matrix v) := rfl
lemma basis.det_self : e.det e = 1 :=
by simp [e.det_apply]
-@[simp] lemma basis.det_is_empty [is_empty ι] : e.det = alternating_map.const_of_is_empty R M 1 :=
+@[simp] lemma basis.det_is_empty [is_empty ι] : e.det = alternating_map.const_of_is_empty R M ι 1 :=
begin
ext v,
exact matrix.det_is_empty,
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(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
@@ -406,7 +406,7 @@ theorem finiteDimensional_of_det_ne_one {𝕜 : Type _} [Field 𝕜] [Module
· rcases H with ⟨s, ⟨hs⟩⟩; exact FiniteDimensional.of_fintype_basis hs
·
classical
- simp [LinearMap.coe_det, H] at hf
+ simp [LinearMap.coe_det, H] at hf
exact hf.elim
#align linear_map.finite_dimensional_of_det_ne_one LinearMap.finiteDimensional_of_det_ne_one
-/
@@ -418,7 +418,7 @@ theorem range_lt_top_of_det_eq_zero {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M]
by
have : FiniteDimensional 𝕜 M := by simp [f.finite_dimensional_of_det_ne_one, hf]
contrapose hf
- simp only [lt_top_iff_ne_top, Classical.not_not, ← is_unit_iff_range_eq_top] at hf
+ simp only [lt_top_iff_ne_top, Classical.not_not, ← is_unit_iff_range_eq_top] at hf
exact isUnit_iff_ne_zero.1 (f.is_unit_det hf)
#align linear_map.range_lt_top_of_det_eq_zero LinearMap.range_lt_top_of_det_eq_zero
-/
@@ -430,7 +430,7 @@ theorem bot_lt_ker_of_det_eq_zero {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] {
by
have : FiniteDimensional 𝕜 M := by simp [f.finite_dimensional_of_det_ne_one, hf]
contrapose hf
- simp only [bot_lt_iff_ne_bot, Classical.not_not, ← is_unit_iff_ker_eq_bot] at hf
+ simp only [bot_lt_iff_ne_bot, Classical.not_not, ← is_unit_iff_ker_eq_bot] at hf
exact isUnit_iff_ne_zero.1 (f.is_unit_det hf)
#align linear_map.bot_lt_ker_of_det_eq_zero LinearMap.bot_lt_ker_of_det_eq_zero
-/
@@ -665,7 +665,7 @@ theorem is_basis_iff_det {v : ι → M} :
ext i j
simp
· intro h
- rw [Basis.det_apply, Basis.toMatrix_eq_toMatrix_constr] at h
+ rw [Basis.det_apply, Basis.toMatrix_eq_toMatrix_constr] at h
set v' := Basis.map e (LinearEquiv.ofIsUnitDet h) with v'_def
have : ⇑v' = v := by ext i;
rw [v'_def, Basis.map_apply, LinearEquiv.ofIsUnitDet_apply, e.constr_basis]
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -311,7 +311,10 @@ theorem det_smul {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCommGroup M] [Mod
exact FiniteDimensional.of_fintype_basis hs
simp only [← det_to_matrix (FiniteDimensional.finBasis 𝕜 M), LinearEquiv.map_smul,
Fintype.card_fin, det_smul]
- · classical
+ ·
+ classical
+ have : FiniteDimensional.finrank 𝕜 M = 0 := finrank_eq_zero_of_not_exists_basis H
+ simp [coe_det, H, this]
#align linear_map.det_smul LinearMap.det_smul
-/
@@ -347,7 +350,14 @@ theorem det_eq_one_of_subsingleton [Subsingleton M] (f : M →ₗ[R] M) : (f : M
#print LinearMap.det_eq_one_of_finrank_eq_zero /-
theorem det_eq_one_of_finrank_eq_zero {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCommGroup M]
[Module 𝕜 M] (h : FiniteDimensional.finrank 𝕜 M = 0) (f : M →ₗ[𝕜] M) :
- (f : M →ₗ[𝕜] M).det = 1 := by classical
+ (f : M →ₗ[𝕜] M).det = 1 := by
+ classical
+ refine' @LinearMap.det_cases M _ 𝕜 _ _ _ (fun t => t = 1) f _ rfl
+ intro s b
+ have : IsEmpty s := by
+ rw [← Fintype.card_eq_zero_iff]
+ exact (FiniteDimensional.finrank_eq_card_basis b).symm.trans h
+ exact Matrix.det_isEmpty
#align linear_map.det_eq_one_of_finrank_eq_zero LinearMap.det_eq_one_of_finrank_eq_zero
-/
@@ -355,7 +365,24 @@ theorem det_eq_one_of_finrank_eq_zero {𝕜 : Type _} [Field 𝕜] {M : Type _}
/-- Conjugating a linear map by a linear equiv does not change its determinant. -/
@[simp]
theorem det_conj {N : Type _} [AddCommGroup N] [Module A N] (f : M →ₗ[A] M) (e : M ≃ₗ[A] N) :
- LinearMap.det ((e : M →ₗ[A] N) ∘ₗ f ∘ₗ (e.symm : N →ₗ[A] M)) = LinearMap.det f := by classical
+ LinearMap.det ((e : M →ₗ[A] N) ∘ₗ f ∘ₗ (e.symm : N →ₗ[A] M)) = LinearMap.det f := by
+ classical
+ by_cases H : ∃ s : Finset M, Nonempty (Basis s A M)
+ · rcases H with ⟨s, ⟨b⟩⟩
+ rw [← det_to_matrix b f, ← det_to_matrix (b.map e), to_matrix_comp (b.map e) b (b.map e),
+ to_matrix_comp (b.map e) b b, ← Matrix.mul_assoc, Matrix.det_conj_of_mul_eq_one]
+ ·
+ rw [← to_matrix_comp, LinearEquiv.comp_coe, e.symm_trans_self, LinearEquiv.refl_toLinearMap,
+ to_matrix_id]
+ ·
+ rw [← to_matrix_comp, LinearEquiv.comp_coe, e.self_trans_symm, LinearEquiv.refl_toLinearMap,
+ to_matrix_id]
+ · have H' : ¬∃ t : Finset N, Nonempty (Basis t A N) :=
+ by
+ contrapose! H
+ rcases H with ⟨s, ⟨b⟩⟩
+ exact ⟨_, ⟨(b.map e.symm).reindexFinsetRange⟩⟩
+ simp only [coe_det, H, H', Pi.one_apply, dif_neg, not_false_iff]
#align linear_map.det_conj LinearMap.det_conj
-/
@@ -377,7 +404,10 @@ theorem finiteDimensional_of_det_ne_one {𝕜 : Type _} [Field 𝕜] [Module
by
by_cases H : ∃ s : Finset M, Nonempty (Basis s 𝕜 M)
· rcases H with ⟨s, ⟨hs⟩⟩; exact FiniteDimensional.of_fintype_basis hs
- · classical
+ ·
+ classical
+ simp [LinearMap.coe_det, H] at hf
+ exact hf.elim
#align linear_map.finite_dimensional_of_det_ne_one LinearMap.finiteDimensional_of_det_ne_one
-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -311,10 +311,7 @@ theorem det_smul {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCommGroup M] [Mod
exact FiniteDimensional.of_fintype_basis hs
simp only [← det_to_matrix (FiniteDimensional.finBasis 𝕜 M), LinearEquiv.map_smul,
Fintype.card_fin, det_smul]
- ·
- classical
- have : FiniteDimensional.finrank 𝕜 M = 0 := finrank_eq_zero_of_not_exists_basis H
- simp [coe_det, H, this]
+ · classical
#align linear_map.det_smul LinearMap.det_smul
-/
@@ -350,14 +347,7 @@ theorem det_eq_one_of_subsingleton [Subsingleton M] (f : M →ₗ[R] M) : (f : M
#print LinearMap.det_eq_one_of_finrank_eq_zero /-
theorem det_eq_one_of_finrank_eq_zero {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCommGroup M]
[Module 𝕜 M] (h : FiniteDimensional.finrank 𝕜 M = 0) (f : M →ₗ[𝕜] M) :
- (f : M →ₗ[𝕜] M).det = 1 := by
- classical
- refine' @LinearMap.det_cases M _ 𝕜 _ _ _ (fun t => t = 1) f _ rfl
- intro s b
- have : IsEmpty s := by
- rw [← Fintype.card_eq_zero_iff]
- exact (FiniteDimensional.finrank_eq_card_basis b).symm.trans h
- exact Matrix.det_isEmpty
+ (f : M →ₗ[𝕜] M).det = 1 := by classical
#align linear_map.det_eq_one_of_finrank_eq_zero LinearMap.det_eq_one_of_finrank_eq_zero
-/
@@ -365,24 +355,7 @@ theorem det_eq_one_of_finrank_eq_zero {𝕜 : Type _} [Field 𝕜] {M : Type _}
/-- Conjugating a linear map by a linear equiv does not change its determinant. -/
@[simp]
theorem det_conj {N : Type _} [AddCommGroup N] [Module A N] (f : M →ₗ[A] M) (e : M ≃ₗ[A] N) :
- LinearMap.det ((e : M →ₗ[A] N) ∘ₗ f ∘ₗ (e.symm : N →ₗ[A] M)) = LinearMap.det f := by
- classical
- by_cases H : ∃ s : Finset M, Nonempty (Basis s A M)
- · rcases H with ⟨s, ⟨b⟩⟩
- rw [← det_to_matrix b f, ← det_to_matrix (b.map e), to_matrix_comp (b.map e) b (b.map e),
- to_matrix_comp (b.map e) b b, ← Matrix.mul_assoc, Matrix.det_conj_of_mul_eq_one]
- ·
- rw [← to_matrix_comp, LinearEquiv.comp_coe, e.symm_trans_self, LinearEquiv.refl_toLinearMap,
- to_matrix_id]
- ·
- rw [← to_matrix_comp, LinearEquiv.comp_coe, e.self_trans_symm, LinearEquiv.refl_toLinearMap,
- to_matrix_id]
- · have H' : ¬∃ t : Finset N, Nonempty (Basis t A N) :=
- by
- contrapose! H
- rcases H with ⟨s, ⟨b⟩⟩
- exact ⟨_, ⟨(b.map e.symm).reindexFinsetRange⟩⟩
- simp only [coe_det, H, H', Pi.one_apply, dif_neg, not_false_iff]
+ LinearMap.det ((e : M →ₗ[A] N) ∘ₗ f ∘ₗ (e.symm : N →ₗ[A] M)) = LinearMap.det f := by classical
#align linear_map.det_conj LinearMap.det_conj
-/
@@ -404,10 +377,7 @@ theorem finiteDimensional_of_det_ne_one {𝕜 : Type _} [Field 𝕜] [Module
by
by_cases H : ∃ s : Finset M, Nonempty (Basis s 𝕜 M)
· rcases H with ⟨s, ⟨hs⟩⟩; exact FiniteDimensional.of_fintype_basis hs
- ·
- classical
- simp [LinearMap.coe_det, H] at hf
- exact hf.elim
+ · classical
#align linear_map.finite_dimensional_of_det_ne_one LinearMap.finiteDimensional_of_det_ne_one
-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -751,7 +751,7 @@ theorem Basis.det_reindex' {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (b : B
#print Basis.det_reindex_symm /-
theorem Basis.det_reindex_symm {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (b : Basis ι R M)
(v : ι → M) (e : ι' ≃ ι) : (b.reindex e.symm).det (v ∘ e) = b.det v := by
- rw [Basis.det_reindex, Function.comp.assoc, e.self_comp_symm, Function.comp.right_id]
+ rw [Basis.det_reindex, Function.comp.assoc, e.self_comp_symm, Function.comp_id]
#align basis.det_reindex_symm Basis.det_reindex_symm
-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/ce64cd319bb6b3e82f31c2d38e79080d377be451
@@ -3,12 +3,12 @@ Copyright (c) 2019 Johannes Hölzl. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Johannes Hölzl, Patrick Massot, Casper Putz, Anne Baanen
-/
-import Mathbin.LinearAlgebra.FiniteDimensional
-import Mathbin.LinearAlgebra.GeneralLinearGroup
-import Mathbin.LinearAlgebra.Matrix.Reindex
-import Mathbin.Tactic.FieldSimp
-import Mathbin.LinearAlgebra.Matrix.NonsingularInverse
-import Mathbin.LinearAlgebra.Matrix.Basis
+import LinearAlgebra.FiniteDimensional
+import LinearAlgebra.GeneralLinearGroup
+import LinearAlgebra.Matrix.Reindex
+import Tactic.FieldSimp
+import LinearAlgebra.Matrix.NonsingularInverse
+import LinearAlgebra.Matrix.Basis
#align_import linear_algebra.determinant from "leanprover-community/mathlib"@"0c1d80f5a86b36c1db32e021e8d19ae7809d5b79"
mathlib commit https://github.com/leanprover-community/mathlib/commit/442a83d738cb208d3600056c489be16900ba701d
@@ -741,10 +741,12 @@ theorem Basis.det_reindex {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (b : Ba
#align basis.det_reindex Basis.det_reindex
-/
+#print Basis.det_reindex' /-
theorem Basis.det_reindex' {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (b : Basis ι R M)
(e : ι ≃ ι') : (b.reindex e).det = b.det.domDomCongr e :=
AlternatingMap.ext fun _ => Basis.det_reindex _ _ _
#align basis.det_reindex' Basis.det_reindex'
+-/
#print Basis.det_reindex_symm /-
theorem Basis.det_reindex_symm {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (b : Basis ι R M)
mathlib commit https://github.com/leanprover-community/mathlib/commit/32a7e535287f9c73f2e4d2aef306a39190f0b504
@@ -192,7 +192,7 @@ theorem detAux_id (b : Trunc <| Basis ι A M) : LinearMap.detAux b LinearMap.id
@[simp]
theorem detAux_comp (b : Trunc <| Basis ι A M) (f g : M →ₗ[A] M) :
LinearMap.detAux b (f.comp g) = LinearMap.detAux b f * LinearMap.detAux b g :=
- (LinearMap.detAux b).map_mul f g
+ (LinearMap.detAux b).map_hMul f g
#align linear_map.det_aux_comp LinearMap.detAux_comp
-/
@@ -289,7 +289,7 @@ theorem det_cases [DecidableEq M] {P : A → Prop} (f : M →ₗ[A] M)
#print LinearMap.det_comp /-
@[simp]
theorem det_comp (f g : M →ₗ[A] M) : (f.comp g).det = f.det * g.det :=
- LinearMap.det.map_mul f g
+ LinearMap.det.map_hMul f g
#align linear_map.det_comp LinearMap.det_comp
-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/63721b2c3eba6c325ecf8ae8cca27155a4f6306f
@@ -10,7 +10,7 @@ import Mathbin.Tactic.FieldSimp
import Mathbin.LinearAlgebra.Matrix.NonsingularInverse
import Mathbin.LinearAlgebra.Matrix.Basis
-#align_import linear_algebra.determinant from "leanprover-community/mathlib"@"bd65478311e4dfd41f48bf38c7e3b02fb75d0163"
+#align_import linear_algebra.determinant from "leanprover-community/mathlib"@"0c1d80f5a86b36c1db32e021e8d19ae7809d5b79"
/-!
# Determinant of families of vectors
@@ -741,6 +741,11 @@ theorem Basis.det_reindex {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (b : Ba
#align basis.det_reindex Basis.det_reindex
-/
+theorem Basis.det_reindex' {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (b : Basis ι R M)
+ (e : ι ≃ ι') : (b.reindex e).det = b.det.domDomCongr e :=
+ AlternatingMap.ext fun _ => Basis.det_reindex _ _ _
+#align basis.det_reindex' Basis.det_reindex'
+
#print Basis.det_reindex_symm /-
theorem Basis.det_reindex_symm {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (b : Basis ι R M)
(v : ι → M) (e : ι' ≃ ι) : (b.reindex e.symm).det (v ∘ e) = b.det v := by
mathlib commit https://github.com/leanprover-community/mathlib/commit/8ea5598db6caeddde6cb734aa179cc2408dbd345
@@ -2,11 +2,6 @@
Copyright (c) 2019 Johannes Hölzl. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Johannes Hölzl, Patrick Massot, Casper Putz, Anne Baanen
-
-! This file was ported from Lean 3 source module linear_algebra.determinant
-! leanprover-community/mathlib commit bd65478311e4dfd41f48bf38c7e3b02fb75d0163
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathbin.LinearAlgebra.FiniteDimensional
import Mathbin.LinearAlgebra.GeneralLinearGroup
@@ -15,6 +10,8 @@ import Mathbin.Tactic.FieldSimp
import Mathbin.LinearAlgebra.Matrix.NonsingularInverse
import Mathbin.LinearAlgebra.Matrix.Basis
+#align_import linear_algebra.determinant from "leanprover-community/mathlib"@"bd65478311e4dfd41f48bf38c7e3b02fb75d0163"
+
/-!
# Determinant of families of vectors
mathlib commit https://github.com/leanprover-community/mathlib/commit/2a0ce625dbb0ffbc7d1316597de0b25c1ec75303
@@ -665,7 +665,7 @@ theorem is_basis_iff_det {v : ι → M} :
set v' := Basis.mk hli hspan.ge with v'_eq
rw [e.det_apply]
convert LinearEquiv.isUnit_det (LinearEquiv.refl _ _) v' e using 2
- ext (i j)
+ ext i j
simp
· intro h
rw [Basis.det_apply, Basis.toMatrix_eq_toMatrix_constr] at h
@@ -732,7 +732,7 @@ theorem Basis.det_comp_basis [Module A M'] (b : Basis ι A M) (b' : Basis ι A M
by
rw [Basis.det_apply, ← LinearMap.det_toMatrix b', LinearMap.toMatrix_comp _ b, Matrix.det_mul,
LinearMap.toMatrix_basis_equiv, Matrix.det_one, mul_one]
- congr 1; ext (i j)
+ congr 1; ext i j
rw [Basis.toMatrix_apply, LinearMap.toMatrix_apply]
#align basis.det_comp_basis Basis.det_comp_basis
-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/9fb8964792b4237dac6200193a0d533f1b3f7423
@@ -76,24 +76,31 @@ variable {A : Type _} [CommRing A]
variable {m n : Type _} [Fintype m] [Fintype n]
+#print equivOfPiLEquivPi /-
/-- If `R^m` and `R^n` are linearly equivalent, then `m` and `n` are also equivalent. -/
def equivOfPiLEquivPi {R : Type _} [CommRing R] [Nontrivial R] (e : (m → R) ≃ₗ[R] n → R) : m ≃ n :=
Basis.indexEquiv (Basis.ofEquivFun e.symm) (Pi.basisFun _ _)
#align equiv_of_pi_lequiv_pi equivOfPiLEquivPi
+-/
namespace Matrix
+#print Matrix.indexEquivOfInv /-
/-- If `M` and `M'` are each other's inverse matrices, they are square matrices up to
equivalence of types. -/
def indexEquivOfInv [Nontrivial A] [DecidableEq m] [DecidableEq n] {M : Matrix m n A}
{M' : Matrix n m A} (hMM' : M ⬝ M' = 1) (hM'M : M' ⬝ M = 1) : m ≃ n :=
equivOfPiLEquivPi (toLin'OfInv hMM' hM'M)
#align matrix.index_equiv_of_inv Matrix.indexEquivOfInv
+-/
+#print Matrix.det_comm /-
theorem det_comm [DecidableEq n] (M N : Matrix n n A) : det (M ⬝ N) = det (N ⬝ M) := by
rw [det_mul, det_mul, mul_comm]
#align matrix.det_comm Matrix.det_comm
+-/
+#print Matrix.det_comm' /-
/-- If there exists a two-sided inverse `M'` for `M` (indexed differently),
then `det (N ⬝ M) = det (M ⬝ N)`. -/
theorem det_comm' [DecidableEq m] [DecidableEq n] {M : Matrix n m A} {N : Matrix m n A}
@@ -106,7 +113,9 @@ theorem det_comm' [DecidableEq m] [DecidableEq n] {M : Matrix n m A} {N : Matrix
rw [← det_submatrix_equiv_self e, ← submatrix_mul_equiv _ _ _ (Equiv.refl n) _, det_comm,
submatrix_mul_equiv, Equiv.coe_refl, submatrix_id_id]
#align matrix.det_comm' Matrix.det_comm'
+-/
+#print Matrix.det_conj_of_mul_eq_one /-
/-- If `M'` is a two-sided inverse for `M` (indexed differently), `det (M ⬝ N ⬝ M') = det N`.
See `matrix.det_conj` and `matrix.det_conj'` for the case when `M' = M⁻¹` or vice versa. -/
@@ -115,6 +124,7 @@ theorem det_conj_of_mul_eq_one [DecidableEq m] [DecidableEq n] {M : Matrix m n A
det (M ⬝ N ⬝ M') = det N := by
rw [← det_comm' hM'M hMM', ← Matrix.mul_assoc, hM'M, Matrix.one_mul]
#align matrix.det_conj_of_mul_eq_one Matrix.det_conj_of_mul_eq_one
+-/
end Matrix
@@ -129,6 +139,7 @@ variable {A : Type _} [CommRing A] [Module A M]
variable {κ : Type _} [Fintype κ]
+#print LinearMap.det_toMatrix_eq_det_toMatrix /-
/-- The determinant of `linear_map.to_matrix` does not depend on the choice of basis. -/
theorem det_toMatrix_eq_det_toMatrix [DecidableEq κ] (b : Basis ι A M) (c : Basis κ A M)
(f : M →ₗ[A] M) : det (LinearMap.toMatrix b b f) = det (LinearMap.toMatrix c c f) := by
@@ -136,6 +147,7 @@ theorem det_toMatrix_eq_det_toMatrix [DecidableEq κ] (b : Basis ι A M) (c : Ba
Matrix.det_conj_of_mul_eq_one] <;>
rw [Basis.toMatrix_mul_toMatrix, Basis.toMatrix_self]
#align linear_map.det_to_matrix_eq_det_to_matrix LinearMap.det_toMatrix_eq_det_toMatrix
+-/
#print LinearMap.detAux /-
/-- The determinant of an endomorphism given a basis.
@@ -154,6 +166,7 @@ irreducible_def detAux : Trunc (Basis ι A M) → (M →ₗ[A] M) →* A :=
#align linear_map.det_aux LinearMap.detAux
-/
+#print LinearMap.detAux_def' /-
/-- Unfold lemma for `det_aux`.
See also `det_aux_def'` which allows you to vary the basis.
@@ -161,23 +174,30 @@ See also `det_aux_def'` which allows you to vary the basis.
theorem detAux_def' (b : Basis ι A M) (f : M →ₗ[A] M) :
LinearMap.detAux (Trunc.mk b) f = Matrix.det (LinearMap.toMatrix b b f) := by rw [det_aux]; rfl
#align linear_map.det_aux_def LinearMap.detAux_def'
+-/
+#print LinearMap.detAux_def'' /-
theorem detAux_def'' {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (tb : Trunc <| Basis ι A M)
(b' : Basis ι' A M) (f : M →ₗ[A] M) :
LinearMap.detAux tb f = Matrix.det (LinearMap.toMatrix b' b' f) := by
apply Trunc.induction_on tb; intro b; rw [det_aux_def, det_to_matrix_eq_det_to_matrix b b']
#align linear_map.det_aux_def' LinearMap.detAux_def''
+-/
+#print LinearMap.detAux_id /-
@[simp]
theorem detAux_id (b : Trunc <| Basis ι A M) : LinearMap.detAux b LinearMap.id = 1 :=
(LinearMap.detAux b).map_one
#align linear_map.det_aux_id LinearMap.detAux_id
+-/
+#print LinearMap.detAux_comp /-
@[simp]
theorem detAux_comp (b : Trunc <| Basis ι A M) (f g : M →ₗ[A] M) :
LinearMap.detAux b (f.comp g) = LinearMap.detAux b f * LinearMap.detAux b g :=
(LinearMap.detAux b).map_mul f g
#align linear_map.det_aux_comp LinearMap.detAux_comp
+-/
section
@@ -196,6 +216,7 @@ protected irreducible_def det : (M →ₗ[A] M) →* A :=
#align linear_map.det LinearMap.det
-/
+#print LinearMap.coe_det /-
theorem coe_det [DecidableEq M] :
⇑(LinearMap.det : (M →ₗ[A] M) →* A) =
if H : ∃ s : Finset M, Nonempty (Basis s A M) then
@@ -208,9 +229,11 @@ theorem coe_det [DecidableEq M] :
-- use the correct `decidable_eq` instance
rfl
#align linear_map.coe_det LinearMap.coe_det
+-/
end
+#print LinearMap.det_eq_det_toMatrix_of_finset /-
-- Auxiliary lemma, the `simp` normal form goes in the other direction
-- (using `linear_map.det_to_matrix`)
theorem det_eq_det_toMatrix_of_finset [DecidableEq M] {s : Finset M} (b : Basis s A M)
@@ -219,30 +242,40 @@ theorem det_eq_det_toMatrix_of_finset [DecidableEq M] {s : Finset M} (b : Basis
have : ∃ s : Finset M, Nonempty (Basis s A M) := ⟨s, ⟨b⟩⟩
rw [LinearMap.coe_det, dif_pos, det_aux_def' _ b] <;> assumption
#align linear_map.det_eq_det_to_matrix_of_finset LinearMap.det_eq_det_toMatrix_of_finset
+-/
+#print LinearMap.det_toMatrix /-
@[simp]
theorem det_toMatrix (b : Basis ι A M) (f : M →ₗ[A] M) : Matrix.det (toMatrix b b f) = f.det :=
by
haveI := Classical.decEq M
rw [det_eq_det_to_matrix_of_finset b.reindex_finset_range, det_to_matrix_eq_det_to_matrix b]
#align linear_map.det_to_matrix LinearMap.det_toMatrix
+-/
+#print LinearMap.det_toMatrix' /-
@[simp]
theorem det_toMatrix' {ι : Type _} [Fintype ι] [DecidableEq ι] (f : (ι → A) →ₗ[A] ι → A) :
det f.toMatrix' = f.det := by simp [← to_matrix_eq_to_matrix']
#align linear_map.det_to_matrix' LinearMap.det_toMatrix'
+-/
+#print LinearMap.det_toLin /-
@[simp]
theorem det_toLin (b : Basis ι R M) (f : Matrix ι ι R) :
LinearMap.det (Matrix.toLin b b f) = f.det := by
rw [← LinearMap.det_toMatrix b, LinearMap.toMatrix_toLin]
#align linear_map.det_to_lin LinearMap.det_toLin
+-/
+#print LinearMap.det_toLin' /-
@[simp]
theorem det_toLin' (f : Matrix ι ι R) : LinearMap.det f.toLin' = f.det := by
simp only [← to_lin_eq_to_lin', det_to_lin]
#align linear_map.det_to_lin' LinearMap.det_toLin'
+-/
+#print LinearMap.det_cases /-
/-- To show `P f.det` it suffices to consider `P (to_matrix _ _ f).det` and `P 1`. -/
@[elab_as_elim]
theorem det_cases [DecidableEq M] {P : A → Prop} (f : M →ₗ[A] M)
@@ -254,17 +287,23 @@ theorem det_cases [DecidableEq M] {P : A → Prop} (f : M →ₗ[A] M)
apply det_aux_def'
· exact h1
#align linear_map.det_cases LinearMap.det_cases
+-/
+#print LinearMap.det_comp /-
@[simp]
theorem det_comp (f g : M →ₗ[A] M) : (f.comp g).det = f.det * g.det :=
LinearMap.det.map_mul f g
#align linear_map.det_comp LinearMap.det_comp
+-/
+#print LinearMap.det_id /-
@[simp]
theorem det_id : (LinearMap.id : M →ₗ[A] M).det = 1 :=
LinearMap.det.map_one
#align linear_map.det_id LinearMap.det_id
+-/
+#print LinearMap.det_smul /-
/-- Multiplying a map by a scalar `c` multiplies its determinant by `c ^ dim M`. -/
@[simp]
theorem det_smul {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCommGroup M] [Module 𝕜 M] (c : 𝕜)
@@ -280,14 +319,18 @@ theorem det_smul {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCommGroup M] [Mod
have : FiniteDimensional.finrank 𝕜 M = 0 := finrank_eq_zero_of_not_exists_basis H
simp [coe_det, H, this]
#align linear_map.det_smul LinearMap.det_smul
+-/
+#print LinearMap.det_zero' /-
theorem det_zero' {ι : Type _} [Finite ι] [Nonempty ι] (b : Basis ι A M) :
LinearMap.det (0 : M →ₗ[A] M) = 0 :=
by
haveI := Classical.decEq ι; cases nonempty_fintype ι
rwa [← det_to_matrix b, LinearEquiv.map_zero, det_zero]
#align linear_map.det_zero' LinearMap.det_zero'
+-/
+#print LinearMap.det_zero /-
/-- In a finite-dimensional vector space, the zero map has determinant `1` in dimension `0`,
and `0` otherwise. We give a formula that also works in infinite dimension, where we define
the determinant to be `1`. -/
@@ -296,14 +339,18 @@ theorem det_zero {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCommGroup M] [Mod
LinearMap.det (0 : M →ₗ[𝕜] M) = (0 : 𝕜) ^ FiniteDimensional.finrank 𝕜 M := by
simp only [← zero_smul 𝕜 (1 : M →ₗ[𝕜] M), det_smul, mul_one, MonoidHom.map_one]
#align linear_map.det_zero LinearMap.det_zero
+-/
+#print LinearMap.det_eq_one_of_subsingleton /-
theorem det_eq_one_of_subsingleton [Subsingleton M] (f : M →ₗ[R] M) : (f : M →ₗ[R] M).det = 1 :=
by
have b : Basis (Fin 0) R M := Basis.empty M
rw [← f.det_to_matrix b]
exact Matrix.det_isEmpty
#align linear_map.det_eq_one_of_subsingleton LinearMap.det_eq_one_of_subsingleton
+-/
+#print LinearMap.det_eq_one_of_finrank_eq_zero /-
theorem det_eq_one_of_finrank_eq_zero {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCommGroup M]
[Module 𝕜 M] (h : FiniteDimensional.finrank 𝕜 M = 0) (f : M →ₗ[𝕜] M) :
(f : M →ₗ[𝕜] M).det = 1 := by
@@ -315,7 +362,9 @@ theorem det_eq_one_of_finrank_eq_zero {𝕜 : Type _} [Field 𝕜] {M : Type _}
exact (FiniteDimensional.finrank_eq_card_basis b).symm.trans h
exact Matrix.det_isEmpty
#align linear_map.det_eq_one_of_finrank_eq_zero LinearMap.det_eq_one_of_finrank_eq_zero
+-/
+#print LinearMap.det_conj /-
/-- Conjugating a linear map by a linear equiv does not change its determinant. -/
@[simp]
theorem det_conj {N : Type _} [AddCommGroup N] [Module A N] (f : M →ₗ[A] M) (e : M ≃ₗ[A] N) :
@@ -338,7 +387,9 @@ theorem det_conj {N : Type _} [AddCommGroup N] [Module A N] (f : M →ₗ[A] M)
exact ⟨_, ⟨(b.map e.symm).reindexFinsetRange⟩⟩
simp only [coe_det, H, H', Pi.one_apply, dif_neg, not_false_iff]
#align linear_map.det_conj LinearMap.det_conj
+-/
+#print LinearMap.isUnit_det /-
/-- If a linear map is invertible, so is its determinant. -/
theorem isUnit_det {A : Type _} [CommRing A] [Module A M] (f : M →ₗ[A] M) (hf : IsUnit f) :
IsUnit f.det := by
@@ -347,7 +398,9 @@ theorem isUnit_det {A : Type _} [CommRing A] [Module A M] (f : M →ₗ[A] M) (h
simp only [← LinearMap.det_comp, hg, MonoidHom.map_one]
exact isUnit_of_mul_eq_one _ _ this
#align linear_map.is_unit_det LinearMap.isUnit_det
+-/
+#print LinearMap.finiteDimensional_of_det_ne_one /-
/-- If a linear map has determinant different from `1`, then the space is finite-dimensional. -/
theorem finiteDimensional_of_det_ne_one {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] (f : M →ₗ[𝕜] M)
(hf : f.det ≠ 1) : FiniteDimensional 𝕜 M :=
@@ -359,7 +412,9 @@ theorem finiteDimensional_of_det_ne_one {𝕜 : Type _} [Field 𝕜] [Module
simp [LinearMap.coe_det, H] at hf
exact hf.elim
#align linear_map.finite_dimensional_of_det_ne_one LinearMap.finiteDimensional_of_det_ne_one
+-/
+#print LinearMap.range_lt_top_of_det_eq_zero /-
/-- If the determinant of a map vanishes, then the map is not onto. -/
theorem range_lt_top_of_det_eq_zero {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] {f : M →ₗ[𝕜] M}
(hf : f.det = 0) : f.range < ⊤ :=
@@ -369,7 +424,9 @@ theorem range_lt_top_of_det_eq_zero {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M]
simp only [lt_top_iff_ne_top, Classical.not_not, ← is_unit_iff_range_eq_top] at hf
exact isUnit_iff_ne_zero.1 (f.is_unit_det hf)
#align linear_map.range_lt_top_of_det_eq_zero LinearMap.range_lt_top_of_det_eq_zero
+-/
+#print LinearMap.bot_lt_ker_of_det_eq_zero /-
/-- If the determinant of a map vanishes, then the map is not injective. -/
theorem bot_lt_ker_of_det_eq_zero {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] {f : M →ₗ[𝕜] M}
(hf : f.det = 0) : ⊥ < f.ker :=
@@ -379,62 +436,82 @@ theorem bot_lt_ker_of_det_eq_zero {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] {
simp only [bot_lt_iff_ne_bot, Classical.not_not, ← is_unit_iff_ker_eq_bot] at hf
exact isUnit_iff_ne_zero.1 (f.is_unit_det hf)
#align linear_map.bot_lt_ker_of_det_eq_zero LinearMap.bot_lt_ker_of_det_eq_zero
+-/
end LinearMap
namespace LinearEquiv
+#print LinearEquiv.det /-
/-- On a `linear_equiv`, the domain of `linear_map.det` can be promoted to `Rˣ`. -/
protected def det : (M ≃ₗ[R] M) →* Rˣ :=
(Units.map (LinearMap.det : (M →ₗ[R] M) →* R)).comp
(LinearMap.GeneralLinearGroup.generalLinearEquiv R M).symm.toMonoidHom
#align linear_equiv.det LinearEquiv.det
+-/
+#print LinearEquiv.coe_det /-
@[simp]
theorem coe_det (f : M ≃ₗ[R] M) : ↑f.det = LinearMap.det (f : M →ₗ[R] M) :=
rfl
#align linear_equiv.coe_det LinearEquiv.coe_det
+-/
+#print LinearEquiv.coe_inv_det /-
@[simp]
theorem coe_inv_det (f : M ≃ₗ[R] M) : ↑f.det⁻¹ = LinearMap.det (f.symm : M →ₗ[R] M) :=
rfl
#align linear_equiv.coe_inv_det LinearEquiv.coe_inv_det
+-/
+#print LinearEquiv.det_refl /-
@[simp]
theorem det_refl : (LinearEquiv.refl R M).det = 1 :=
Units.ext <| LinearMap.det_id
#align linear_equiv.det_refl LinearEquiv.det_refl
+-/
+#print LinearEquiv.det_trans /-
@[simp]
theorem det_trans (f g : M ≃ₗ[R] M) : (f.trans g).det = g.det * f.det :=
map_mul _ g f
#align linear_equiv.det_trans LinearEquiv.det_trans
+-/
+#print LinearEquiv.det_symm /-
@[simp]
theorem det_symm (f : M ≃ₗ[R] M) : f.symm.det = f.det⁻¹ :=
map_inv _ f
#align linear_equiv.det_symm LinearEquiv.det_symm
+-/
+#print LinearEquiv.det_conj /-
/-- Conjugating a linear equiv by a linear equiv does not change its determinant. -/
@[simp]
theorem det_conj (f : M ≃ₗ[R] M) (e : M ≃ₗ[R] M') : ((e.symm.trans f).trans e).det = f.det := by
rw [← Units.eq_iff, coe_det, coe_det, ← comp_coe, ← comp_coe, LinearMap.det_conj]
#align linear_equiv.det_conj LinearEquiv.det_conj
+-/
end LinearEquiv
+#print LinearEquiv.det_mul_det_symm /-
/-- The determinants of a `linear_equiv` and its inverse multiply to 1. -/
@[simp]
theorem LinearEquiv.det_mul_det_symm {A : Type _} [CommRing A] [Module A M] (f : M ≃ₗ[A] M) :
(f : M →ₗ[A] M).det * (f.symm : M →ₗ[A] M).det = 1 := by simp [← LinearMap.det_comp]
#align linear_equiv.det_mul_det_symm LinearEquiv.det_mul_det_symm
+-/
+#print LinearEquiv.det_symm_mul_det /-
/-- The determinants of a `linear_equiv` and its inverse multiply to 1. -/
@[simp]
theorem LinearEquiv.det_symm_mul_det {A : Type _} [CommRing A] [Module A M] (f : M ≃ₗ[A] M) :
(f.symm : M →ₗ[A] M).det * (f : M →ₗ[A] M).det = 1 := by simp [← LinearMap.det_comp]
#align linear_equiv.det_symm_mul_det LinearEquiv.det_symm_mul_det
+-/
+#print LinearEquiv.isUnit_det /-
-- Cannot be stated using `linear_map.det` because `f` is not an endomorphism.
theorem LinearEquiv.isUnit_det (f : M ≃ₗ[R] M') (v : Basis ι R M) (v' : Basis ι R M') :
IsUnit (LinearMap.toMatrix v v' f).det :=
@@ -442,19 +519,25 @@ theorem LinearEquiv.isUnit_det (f : M ≃ₗ[R] M') (v : Basis ι R M) (v' : Bas
apply is_unit_det_of_left_inverse
simpa using (LinearMap.toMatrix_comp v v' v f.symm f).symm
#align linear_equiv.is_unit_det LinearEquiv.isUnit_det
+-/
+#print LinearEquiv.isUnit_det' /-
/-- Specialization of `linear_equiv.is_unit_det` -/
theorem LinearEquiv.isUnit_det' {A : Type _} [CommRing A] [Module A M] (f : M ≃ₗ[A] M) :
IsUnit (LinearMap.det (f : M →ₗ[A] M)) :=
isUnit_of_mul_eq_one _ _ f.det_mul_det_symm
#align linear_equiv.is_unit_det' LinearEquiv.isUnit_det'
+-/
+#print LinearEquiv.det_coe_symm /-
/-- The determinant of `f.symm` is the inverse of that of `f` when `f` is a linear equiv. -/
theorem LinearEquiv.det_coe_symm {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] (f : M ≃ₗ[𝕜] M) :
(f.symm : M →ₗ[𝕜] M).det = (f : M →ₗ[𝕜] M).det⁻¹ := by
field_simp [IsUnit.ne_zero f.is_unit_det']
#align linear_equiv.det_coe_symm LinearEquiv.det_coe_symm
+-/
+#print LinearEquiv.ofIsUnitDet /-
/-- Builds a linear equivalence from a linear map whose determinant in some bases is a unit. -/
@[simps]
def LinearEquiv.ofIsUnitDet {f : M →ₗ[R] M'} {v : Basis ι R M} {v' : Basis ι R M'}
@@ -476,13 +559,17 @@ def LinearEquiv.ofIsUnitDet {f : M →ₗ[R] M'} {v : Basis ι R M} {v' : Basis
by rw [to_lin_mul v' v v', LinearMap.comp_apply, to_lin_to_matrix v v']
_ = x := by simp [h]
#align linear_equiv.of_is_unit_det LinearEquiv.ofIsUnitDet
+-/
+#print LinearEquiv.coe_ofIsUnitDet /-
@[simp]
theorem LinearEquiv.coe_ofIsUnitDet {f : M →ₗ[R] M'} {v : Basis ι R M} {v' : Basis ι R M'}
(h : IsUnit (LinearMap.toMatrix v v' f).det) : (LinearEquiv.ofIsUnitDet h : M →ₗ[R] M') = f :=
by ext x; rfl
#align linear_equiv.coe_of_is_unit_det LinearEquiv.coe_ofIsUnitDet
+-/
+#print LinearMap.equivOfDetNeZero /-
/-- Builds a linear equivalence from a linear map on a finite-dimensional vector space whose
determinant is nonzero. -/
@[reducible]
@@ -495,7 +582,9 @@ def LinearMap.equivOfDetNeZero {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCom
by simp only [LinearMap.det_toMatrix, isUnit_iff_ne_zero.2 hf]
LinearEquiv.ofIsUnitDet this
#align linear_map.equiv_of_det_ne_zero LinearMap.equivOfDetNeZero
+-/
+#print LinearMap.associated_det_of_eq_comp /-
theorem LinearMap.associated_det_of_eq_comp (e : M ≃ₗ[R] M) (f f' : M →ₗ[R] M)
(h : ∀ x, f x = f' (e x)) : Associated f.det f'.det :=
by
@@ -503,7 +592,9 @@ theorem LinearMap.associated_det_of_eq_comp (e : M ≃ₗ[R] M) (f f' : M →ₗ
rw [← mul_one f'.det, LinearMap.det_comp]
exact Associated.mul_left _ (associated_one_iff_is_unit.mpr e.is_unit_det')
#align linear_map.associated_det_of_eq_comp LinearMap.associated_det_of_eq_comp
+-/
+#print LinearMap.associated_det_comp_equiv /-
theorem LinearMap.associated_det_comp_equiv {N : Type _} [AddCommGroup N] [Module R N]
(f : N →ₗ[R] M) (e e' : M ≃ₗ[R] N) : Associated (f ∘ₗ ↑e).det (f ∘ₗ ↑e').det :=
by
@@ -512,6 +603,7 @@ theorem LinearMap.associated_det_comp_equiv {N : Type _} [AddCommGroup N] [Modul
simp only [LinearMap.comp_apply, LinearEquiv.coe_coe, LinearEquiv.trans_apply,
LinearEquiv.apply_symm_apply]
#align linear_map.associated_det_comp_equiv LinearMap.associated_det_comp_equiv
+-/
#print Basis.det /-
/-- The determinant of a family of vectors with respect to some basis, as an alternating
@@ -538,24 +630,33 @@ def Basis.det : AlternatingMap R M R ι
#align basis.det Basis.det
-/
+#print Basis.det_apply /-
theorem Basis.det_apply (v : ι → M) : e.det v = det (e.toMatrix v) :=
rfl
#align basis.det_apply Basis.det_apply
+-/
+#print Basis.det_self /-
theorem Basis.det_self : e.det e = 1 := by simp [e.det_apply]
#align basis.det_self Basis.det_self
+-/
+#print Basis.det_isEmpty /-
@[simp]
theorem Basis.det_isEmpty [IsEmpty ι] : e.det = AlternatingMap.constOfIsEmpty R M ι 1 :=
by
ext v
exact Matrix.det_isEmpty
#align basis.det_is_empty Basis.det_isEmpty
+-/
+#print Basis.det_ne_zero /-
/-- `basis.det` is not the zero map. -/
theorem Basis.det_ne_zero [Nontrivial R] : e.det ≠ 0 := fun h => by simpa [h] using e.det_self
#align basis.det_ne_zero Basis.det_ne_zero
+-/
+#print is_basis_iff_det /-
theorem is_basis_iff_det {v : ι → M} :
LinearIndependent R v ∧ span R (Set.range v) = ⊤ ↔ IsUnit (e.det v) :=
by
@@ -574,11 +675,15 @@ theorem is_basis_iff_det {v : ι → M} :
rw [← this]
exact ⟨v'.linear_independent, v'.span_eq⟩
#align is_basis_iff_det is_basis_iff_det
+-/
+#print Basis.isUnit_det /-
theorem Basis.isUnit_det (e' : Basis ι R M) : IsUnit (e.det e') :=
(is_basis_iff_det e).mp ⟨e'.LinearIndependent, e'.span_eq⟩
#align basis.is_unit_det Basis.isUnit_det
+-/
+#print AlternatingMap.eq_smul_basis_det /-
/-- Any alternating map to `R` where `ι` has the cardinality of a basis equals the determinant
map with respect to that basis, multiplied by the value of that alternating map on that basis. -/
theorem AlternatingMap.eq_smul_basis_det (f : AlternatingMap R M R ι) : f = f e • e.det :=
@@ -588,7 +693,9 @@ theorem AlternatingMap.eq_smul_basis_det (f : AlternatingMap R M R ι) : f = f e
change f (e ∘ σ) = (f e • e.det) (e ∘ σ)
simp [AlternatingMap.map_perm, Basis.det_self]
#align alternating_map.eq_smul_basis_det AlternatingMap.eq_smul_basis_det
+-/
+#print AlternatingMap.map_basis_eq_zero_iff /-
@[simp]
theorem AlternatingMap.map_basis_eq_zero_iff {ι : Type _} [Finite ι] (e : Basis ι R M)
(f : AlternatingMap R M R ι) : f e = 0 ↔ f = 0 :=
@@ -597,14 +704,18 @@ theorem AlternatingMap.map_basis_eq_zero_iff {ι : Type _} [Finite ι] (e : Basi
letI := Classical.decEq ι
simpa [h] using f.eq_smul_basis_det e, fun h => h.symm ▸ AlternatingMap.zero_apply _⟩
#align alternating_map.map_basis_eq_zero_iff AlternatingMap.map_basis_eq_zero_iff
+-/
+#print AlternatingMap.map_basis_ne_zero_iff /-
theorem AlternatingMap.map_basis_ne_zero_iff {ι : Type _} [Finite ι] (e : Basis ι R M)
(f : AlternatingMap R M R ι) : f e ≠ 0 ↔ f ≠ 0 :=
not_congr <| f.map_basis_eq_zero_iff e
#align alternating_map.map_basis_ne_zero_iff AlternatingMap.map_basis_ne_zero_iff
+-/
variable {A : Type _} [CommRing A] [Module A M]
+#print Basis.det_comp /-
@[simp]
theorem Basis.det_comp (e : Basis ι A M) (f : M →ₗ[A] M) (v : ι → M) :
e.det (f ∘ v) = f.det * e.det v := by
@@ -612,7 +723,9 @@ theorem Basis.det_comp (e : Basis ι A M) (f : M →ₗ[A] M) (v : ι → M) :
e.to_matrix_eq_to_matrix_constr (f ∘ v), e.to_matrix_eq_to_matrix_constr v, ← to_matrix_comp,
e.constr_comp]
#align basis.det_comp Basis.det_comp
+-/
+#print Basis.det_comp_basis /-
@[simp]
theorem Basis.det_comp_basis [Module A M'] (b : Basis ι A M) (b' : Basis ι A M') (f : M →ₗ[A] M') :
b'.det (f ∘ b) = LinearMap.det (f ∘ₗ (b'.Equiv b (Equiv.refl ι) : M' →ₗ[A] M)) :=
@@ -622,35 +735,47 @@ theorem Basis.det_comp_basis [Module A M'] (b : Basis ι A M) (b' : Basis ι A M
congr 1; ext (i j)
rw [Basis.toMatrix_apply, LinearMap.toMatrix_apply]
#align basis.det_comp_basis Basis.det_comp_basis
+-/
+#print Basis.det_reindex /-
theorem Basis.det_reindex {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (b : Basis ι R M) (v : ι' → M)
(e : ι ≃ ι') : (b.reindex e).det v = b.det (v ∘ e) := by
rw [Basis.det_apply, Basis.toMatrix_reindex', det_reindex_alg_equiv, Basis.det_apply]
#align basis.det_reindex Basis.det_reindex
+-/
+#print Basis.det_reindex_symm /-
theorem Basis.det_reindex_symm {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (b : Basis ι R M)
(v : ι → M) (e : ι' ≃ ι) : (b.reindex e.symm).det (v ∘ e) = b.det v := by
rw [Basis.det_reindex, Function.comp.assoc, e.self_comp_symm, Function.comp.right_id]
#align basis.det_reindex_symm Basis.det_reindex_symm
+-/
+#print Basis.det_map /-
@[simp]
theorem Basis.det_map (b : Basis ι R M) (f : M ≃ₗ[R] M') (v : ι → M') :
(b.map f).det v = b.det (f.symm ∘ v) := by
rw [Basis.det_apply, Basis.toMatrix_map, Basis.det_apply]
#align basis.det_map Basis.det_map
+-/
+#print Basis.det_map' /-
theorem Basis.det_map' (b : Basis ι R M) (f : M ≃ₗ[R] M') :
(b.map f).det = b.det.compLinearMap f.symm :=
AlternatingMap.ext <| b.det_map f
#align basis.det_map' Basis.det_map'
+-/
+#print Pi.basisFun_det /-
@[simp]
theorem Pi.basisFun_det : (Pi.basisFun R ι).det = Matrix.detRowAlternating :=
by
ext M
rw [Basis.det_apply, Basis.coePiBasisFun.toMatrix_eq_transpose, det_transpose]
#align pi.basis_fun_det Pi.basisFun_det
+-/
+#print Basis.det_smul_mk_coord_eq_det_update /-
/-- If we fix a background basis `e`, then for any other basis `v`, we can characterise the
coordinates provided by `v` in terms of determinants relative to `e`. -/
theorem Basis.det_smul_mk_coord_eq_det_update {v : ι → M} (hli : LinearIndependent R v)
@@ -666,7 +791,9 @@ theorem Basis.det_smul_mk_coord_eq_det_update {v : ι → M} (hli : LinearIndepe
· rw [Basis.mk_coord_apply_ne hik, MulZeroClass.mul_zero, eq_comm]
exact e.det.map_eq_zero_of_eq _ (by simp [hik, Function.update_apply]) hik
#align basis.det_smul_mk_coord_eq_det_update Basis.det_smul_mk_coord_eq_det_update
+-/
+#print Basis.det_unitsSMul /-
/-- If a basis is multiplied columnwise by scalars `w : ι → Rˣ`, then the determinant with respect
to this basis is multiplied by the product of the inverse of these scalars. -/
theorem Basis.det_unitsSMul (e : Basis ι R M) (w : ι → Rˣ) :
@@ -680,17 +807,22 @@ theorem Basis.det_unitsSMul (e : Basis ι R M) (w : ι → Rˣ) :
convert Matrix.det_mul_column (fun i => (↑(w i)⁻¹ : R)) fun i j => e.repr (f j) i
simp [← Finset.prod_inv_distrib]
#align basis.det_units_smul Basis.det_unitsSMul
+-/
+#print Basis.det_unitsSMul_self /-
/-- The determinant of a basis constructed by `units_smul` is the product of the given units. -/
@[simp]
theorem Basis.det_unitsSMul_self (w : ι → Rˣ) : e.det (e.units_smul w) = ∏ i, w i := by
simp [Basis.det_apply]
#align basis.det_units_smul_self Basis.det_unitsSMul_self
+-/
+#print Basis.det_isUnitSMul /-
/-- The determinant of a basis constructed by `is_unit_smul` is the product of the given units. -/
@[simp]
theorem Basis.det_isUnitSMul {w : ι → R} (hw : ∀ i, IsUnit (w i)) :
e.det (e.isUnitSMul hw) = ∏ i, w i :=
e.det_unitsSMul_self _
#align basis.det_is_unit_smul Basis.det_isUnitSMul
+-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/7e5137f579de09a059a5ce98f364a04e221aabf0
@@ -469,14 +469,12 @@ def LinearEquiv.ofIsUnitDet {f : M →ₗ[R] M'} {v : Basis ι R M} {v' : Basis
toLin v' v (toMatrix v v' f)⁻¹ (f x) = toLin v v ((toMatrix v v' f)⁻¹ ⬝ toMatrix v v' f) x :=
by rw [to_lin_mul v v' v, to_lin_to_matrix, LinearMap.comp_apply]
_ = x := by simp [h]
-
right_inv x :=
calc
f (toLin v' v (toMatrix v v' f)⁻¹ x) =
toLin v' v' (toMatrix v v' f ⬝ (toMatrix v v' f)⁻¹) x :=
by rw [to_lin_mul v' v v', LinearMap.comp_apply, to_lin_to_matrix v v']
_ = x := by simp [h]
-
#align linear_equiv.of_is_unit_det LinearEquiv.ofIsUnitDet
@[simp]
mathlib commit https://github.com/leanprover-community/mathlib/commit/5f25c089cb34db4db112556f23c50d12da81b297
@@ -277,8 +277,8 @@ theorem det_smul {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCommGroup M] [Mod
Fintype.card_fin, det_smul]
·
classical
- have : FiniteDimensional.finrank 𝕜 M = 0 := finrank_eq_zero_of_not_exists_basis H
- simp [coe_det, H, this]
+ have : FiniteDimensional.finrank 𝕜 M = 0 := finrank_eq_zero_of_not_exists_basis H
+ simp [coe_det, H, this]
#align linear_map.det_smul LinearMap.det_smul
theorem det_zero' {ι : Type _} [Finite ι] [Nonempty ι] (b : Basis ι A M) :
@@ -308,12 +308,12 @@ theorem det_eq_one_of_finrank_eq_zero {𝕜 : Type _} [Field 𝕜] {M : Type _}
[Module 𝕜 M] (h : FiniteDimensional.finrank 𝕜 M = 0) (f : M →ₗ[𝕜] M) :
(f : M →ₗ[𝕜] M).det = 1 := by
classical
- refine' @LinearMap.det_cases M _ 𝕜 _ _ _ (fun t => t = 1) f _ rfl
- intro s b
- have : IsEmpty s := by
- rw [← Fintype.card_eq_zero_iff]
- exact (FiniteDimensional.finrank_eq_card_basis b).symm.trans h
- exact Matrix.det_isEmpty
+ refine' @LinearMap.det_cases M _ 𝕜 _ _ _ (fun t => t = 1) f _ rfl
+ intro s b
+ have : IsEmpty s := by
+ rw [← Fintype.card_eq_zero_iff]
+ exact (FiniteDimensional.finrank_eq_card_basis b).symm.trans h
+ exact Matrix.det_isEmpty
#align linear_map.det_eq_one_of_finrank_eq_zero LinearMap.det_eq_one_of_finrank_eq_zero
/-- Conjugating a linear map by a linear equiv does not change its determinant. -/
@@ -321,22 +321,22 @@ theorem det_eq_one_of_finrank_eq_zero {𝕜 : Type _} [Field 𝕜] {M : Type _}
theorem det_conj {N : Type _} [AddCommGroup N] [Module A N] (f : M →ₗ[A] M) (e : M ≃ₗ[A] N) :
LinearMap.det ((e : M →ₗ[A] N) ∘ₗ f ∘ₗ (e.symm : N →ₗ[A] M)) = LinearMap.det f := by
classical
- by_cases H : ∃ s : Finset M, Nonempty (Basis s A M)
- · rcases H with ⟨s, ⟨b⟩⟩
- rw [← det_to_matrix b f, ← det_to_matrix (b.map e), to_matrix_comp (b.map e) b (b.map e),
- to_matrix_comp (b.map e) b b, ← Matrix.mul_assoc, Matrix.det_conj_of_mul_eq_one]
- ·
- rw [← to_matrix_comp, LinearEquiv.comp_coe, e.symm_trans_self, LinearEquiv.refl_toLinearMap,
- to_matrix_id]
- ·
- rw [← to_matrix_comp, LinearEquiv.comp_coe, e.self_trans_symm, LinearEquiv.refl_toLinearMap,
- to_matrix_id]
- · have H' : ¬∃ t : Finset N, Nonempty (Basis t A N) :=
- by
- contrapose! H
- rcases H with ⟨s, ⟨b⟩⟩
- exact ⟨_, ⟨(b.map e.symm).reindexFinsetRange⟩⟩
- simp only [coe_det, H, H', Pi.one_apply, dif_neg, not_false_iff]
+ by_cases H : ∃ s : Finset M, Nonempty (Basis s A M)
+ · rcases H with ⟨s, ⟨b⟩⟩
+ rw [← det_to_matrix b f, ← det_to_matrix (b.map e), to_matrix_comp (b.map e) b (b.map e),
+ to_matrix_comp (b.map e) b b, ← Matrix.mul_assoc, Matrix.det_conj_of_mul_eq_one]
+ ·
+ rw [← to_matrix_comp, LinearEquiv.comp_coe, e.symm_trans_self, LinearEquiv.refl_toLinearMap,
+ to_matrix_id]
+ ·
+ rw [← to_matrix_comp, LinearEquiv.comp_coe, e.self_trans_symm, LinearEquiv.refl_toLinearMap,
+ to_matrix_id]
+ · have H' : ¬∃ t : Finset N, Nonempty (Basis t A N) :=
+ by
+ contrapose! H
+ rcases H with ⟨s, ⟨b⟩⟩
+ exact ⟨_, ⟨(b.map e.symm).reindexFinsetRange⟩⟩
+ simp only [coe_det, H, H', Pi.one_apply, dif_neg, not_false_iff]
#align linear_map.det_conj LinearMap.det_conj
/-- If a linear map is invertible, so is its determinant. -/
@@ -356,8 +356,8 @@ theorem finiteDimensional_of_det_ne_one {𝕜 : Type _} [Field 𝕜] [Module
· rcases H with ⟨s, ⟨hs⟩⟩; exact FiniteDimensional.of_fintype_basis hs
·
classical
- simp [LinearMap.coe_det, H] at hf
- exact hf.elim
+ simp [LinearMap.coe_det, H] at hf
+ exact hf.elim
#align linear_map.finite_dimensional_of_det_ne_one LinearMap.finiteDimensional_of_det_ne_one
/-- If the determinant of a map vanishes, then the map is not onto. -/
mathlib commit https://github.com/leanprover-community/mathlib/commit/cca40788df1b8755d5baf17ab2f27dacc2e17acb
@@ -356,7 +356,7 @@ theorem finiteDimensional_of_det_ne_one {𝕜 : Type _} [Field 𝕜] [Module
· rcases H with ⟨s, ⟨hs⟩⟩; exact FiniteDimensional.of_fintype_basis hs
·
classical
- simp [LinearMap.coe_det, H] at hf
+ simp [LinearMap.coe_det, H] at hf
exact hf.elim
#align linear_map.finite_dimensional_of_det_ne_one LinearMap.finiteDimensional_of_det_ne_one
@@ -366,7 +366,7 @@ theorem range_lt_top_of_det_eq_zero {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M]
by
have : FiniteDimensional 𝕜 M := by simp [f.finite_dimensional_of_det_ne_one, hf]
contrapose hf
- simp only [lt_top_iff_ne_top, Classical.not_not, ← is_unit_iff_range_eq_top] at hf
+ simp only [lt_top_iff_ne_top, Classical.not_not, ← is_unit_iff_range_eq_top] at hf
exact isUnit_iff_ne_zero.1 (f.is_unit_det hf)
#align linear_map.range_lt_top_of_det_eq_zero LinearMap.range_lt_top_of_det_eq_zero
@@ -376,7 +376,7 @@ theorem bot_lt_ker_of_det_eq_zero {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] {
by
have : FiniteDimensional 𝕜 M := by simp [f.finite_dimensional_of_det_ne_one, hf]
contrapose hf
- simp only [bot_lt_iff_ne_bot, Classical.not_not, ← is_unit_iff_ker_eq_bot] at hf
+ simp only [bot_lt_iff_ne_bot, Classical.not_not, ← is_unit_iff_ker_eq_bot] at hf
exact isUnit_iff_ne_zero.1 (f.is_unit_det hf)
#align linear_map.bot_lt_ker_of_det_eq_zero LinearMap.bot_lt_ker_of_det_eq_zero
@@ -569,7 +569,7 @@ theorem is_basis_iff_det {v : ι → M} :
ext (i j)
simp
· intro h
- rw [Basis.det_apply, Basis.toMatrix_eq_toMatrix_constr] at h
+ rw [Basis.det_apply, Basis.toMatrix_eq_toMatrix_constr] at h
set v' := Basis.map e (LinearEquiv.ofIsUnitDet h) with v'_def
have : ⇑v' = v := by ext i;
rw [v'_def, Basis.map_apply, LinearEquiv.ofIsUnitDet_apply, e.constr_basis]
mathlib commit https://github.com/leanprover-community/mathlib/commit/cca40788df1b8755d5baf17ab2f27dacc2e17acb
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: Johannes Hölzl, Patrick Massot, Casper Putz, Anne Baanen
! This file was ported from Lean 3 source module linear_algebra.determinant
-! leanprover-community/mathlib commit fe8d0ff42c3c24d789f491dc2622b6cac3d61564
+! leanprover-community/mathlib commit bd65478311e4dfd41f48bf38c7e3b02fb75d0163
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
@@ -548,7 +548,7 @@ theorem Basis.det_self : e.det e = 1 := by simp [e.det_apply]
#align basis.det_self Basis.det_self
@[simp]
-theorem Basis.det_isEmpty [IsEmpty ι] : e.det = AlternatingMap.constOfIsEmpty R M 1 :=
+theorem Basis.det_isEmpty [IsEmpty ι] : e.det = AlternatingMap.constOfIsEmpty R M ι 1 :=
by
ext v
exact Matrix.det_isEmpty
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -48,9 +48,9 @@ basis, det, determinant
noncomputable section
-open BigOperators
+open scoped BigOperators
-open Matrix
+open scoped Matrix
open LinearMap
@@ -181,7 +181,7 @@ theorem detAux_comp (b : Trunc <| Basis ι A M) (f g : M →ₗ[A] M) :
section
-open Classical
+open scoped Classical
#print LinearMap.det /-
-- Discourage the elaborator from unfolding `det` and producing a huge term by marking it
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -76,12 +76,6 @@ variable {A : Type _} [CommRing A]
variable {m n : Type _} [Fintype m] [Fintype n]
-/- warning: equiv_of_pi_lequiv_pi -> equivOfPiLEquivPi is a dubious translation:
-lean 3 declaration is
- forall {m : Type.{u_6}} {n : Type.{u_7}} [_inst_9 : Fintype.{u_6} m] [_inst_10 : Fintype.{u_7} n] {R : Type.{u_1}} [_inst_11 : CommRing.{u_1} R] [_inst_12 : Nontrivial.{u_1} R], (LinearEquiv.{u_1, u_1, max u_6 u_1, max u_7 u_1} R R (Ring.toSemiring.{u_1} R (CommRing.toRing.{u_1} R _inst_11)) (Ring.toSemiring.{u_1} R (CommRing.toRing.{u_1} R _inst_11)) (RingHom.id.{u_1} R (Semiring.toNonAssocSemiring.{u_1} R (Ring.toSemiring.{u_1} R (CommRing.toRing.{u_1} R _inst_11)))) (RingHom.id.{u_1} R (Semiring.toNonAssocSemiring.{u_1} R (Ring.toSemiring.{u_1} R (CommRing.toRing.{u_1} R _inst_11)))) (equivOfPiLEquivPi._proof_1.{u_1} R _inst_11) (equivOfPiLEquivPi._proof_2.{u_1} R _inst_11) (m -> R) (n -> R) (Pi.addCommMonoid.{u_6, u_1} m (fun (ᾰ : m) => R) (fun (i : m) => AddCommGroup.toAddCommMonoid.{u_1} R (NonUnitalNonAssocRing.toAddCommGroup.{u_1} R (NonAssocRing.toNonUnitalNonAssocRing.{u_1} R (Ring.toNonAssocRing.{u_1} R (CommRing.toRing.{u_1} R _inst_11)))))) (Pi.addCommMonoid.{u_7, u_1} n (fun (ᾰ : n) => R) (fun (i : n) => AddCommGroup.toAddCommMonoid.{u_1} R (NonUnitalNonAssocRing.toAddCommGroup.{u_1} R (NonAssocRing.toNonUnitalNonAssocRing.{u_1} R (Ring.toNonAssocRing.{u_1} R (CommRing.toRing.{u_1} R _inst_11)))))) (Pi.Function.module.{u_6, u_1, u_1} m R R (Ring.toSemiring.{u_1} R (CommRing.toRing.{u_1} R _inst_11)) (AddCommGroup.toAddCommMonoid.{u_1} R (NonUnitalNonAssocRing.toAddCommGroup.{u_1} R (NonAssocRing.toNonUnitalNonAssocRing.{u_1} R (Ring.toNonAssocRing.{u_1} R (CommRing.toRing.{u_1} R _inst_11))))) (Semiring.toModule.{u_1} R (Ring.toSemiring.{u_1} R (CommRing.toRing.{u_1} R _inst_11)))) (Pi.Function.module.{u_7, u_1, u_1} n R R (Ring.toSemiring.{u_1} R (CommRing.toRing.{u_1} R _inst_11)) (AddCommGroup.toAddCommMonoid.{u_1} R (NonUnitalNonAssocRing.toAddCommGroup.{u_1} R (NonAssocRing.toNonUnitalNonAssocRing.{u_1} R (Ring.toNonAssocRing.{u_1} R (CommRing.toRing.{u_1} R _inst_11))))) (Semiring.toModule.{u_1} R (Ring.toSemiring.{u_1} R (CommRing.toRing.{u_1} R _inst_11))))) -> (Equiv.{succ u_6, succ u_7} m n)
-but is expected to have type
- forall {m : Type.{u_1}} {n : Type.{u_2}} [_inst_9 : Fintype.{u_1} m] [_inst_10 : Fintype.{u_2} n] {R : Type.{u_3}} [_inst_11 : CommRing.{u_3} R] [_inst_12 : Nontrivial.{u_3} R], (LinearEquiv.{u_3, u_3, max u_1 u_3, max u_2 u_3} R R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11)) (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11)) (RingHom.id.{u_3} R (Semiring.toNonAssocSemiring.{u_3} R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11)))) (RingHom.id.{u_3} R (Semiring.toNonAssocSemiring.{u_3} R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11)))) (RingHomInvPair.ids.{u_3} R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11))) (RingHomInvPair.ids.{u_3} R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11))) (m -> R) (n -> R) (Pi.addCommMonoid.{u_1, u_3} m (fun (ᾰ : m) => R) (fun (i : m) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u_3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_3} R (NonAssocRing.toNonUnitalNonAssocRing.{u_3} R (Ring.toNonAssocRing.{u_3} R (CommRing.toRing.{u_3} R _inst_11)))))) (Pi.addCommMonoid.{u_2, u_3} n (fun (ᾰ : n) => R) (fun (i : n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u_3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_3} R (NonAssocRing.toNonUnitalNonAssocRing.{u_3} R (Ring.toNonAssocRing.{u_3} R (CommRing.toRing.{u_3} R _inst_11)))))) (Pi.module.{u_1, u_3, u_3} m (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.264 : m) => R) R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11)) (fun (i : m) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u_3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_3} R (NonAssocRing.toNonUnitalNonAssocRing.{u_3} R (Ring.toNonAssocRing.{u_3} R (CommRing.toRing.{u_3} R _inst_11))))) (fun (i : m) => Semiring.toModule.{u_3} R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11)))) (Pi.module.{u_2, u_3, u_3} n (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.267 : n) => R) R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11)) (fun (i : n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u_3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_3} R (NonAssocRing.toNonUnitalNonAssocRing.{u_3} R (Ring.toNonAssocRing.{u_3} R (CommRing.toRing.{u_3} R _inst_11))))) (fun (i : n) => Semiring.toModule.{u_3} R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11))))) -> (Equiv.{succ u_1, succ u_2} m n)
-Case conversion may be inaccurate. Consider using '#align equiv_of_pi_lequiv_pi equivOfPiLEquivPiₓ'. -/
/-- If `R^m` and `R^n` are linearly equivalent, then `m` and `n` are also equivalent. -/
def equivOfPiLEquivPi {R : Type _} [CommRing R] [Nontrivial R] (e : (m → R) ≃ₗ[R] n → R) : m ≃ n :=
Basis.indexEquiv (Basis.ofEquivFun e.symm) (Pi.basisFun _ _)
@@ -89,12 +83,6 @@ def equivOfPiLEquivPi {R : Type _} [CommRing R] [Nontrivial R] (e : (m → R)
namespace Matrix
-/- warning: matrix.index_equiv_of_inv -> Matrix.indexEquivOfInv is a dubious translation:
-lean 3 declaration is
- forall {A : Type.{u_5}} [_inst_8 : CommRing.{u_5} A] {m : Type.{u_6}} {n : Type.{u_7}} [_inst_9 : Fintype.{u_6} m] [_inst_10 : Fintype.{u_7} n] [_inst_11 : Nontrivial.{u_5} A] [_inst_12 : DecidableEq.{succ u_6} m] [_inst_13 : DecidableEq.{succ u_7} n] {M : Matrix.{u_6, u_7, u_5} m n A} {M' : Matrix.{u_7, u_6, u_5} n m A}, (Eq.{succ (max u_6 u_5)} (Matrix.{u_6, u_6, u_5} m m A) (Matrix.mul.{u_5, u_6, u_7, u_6} m n m A _inst_10 (Distrib.toHasMul.{u_5} A (Ring.toDistrib.{u_5} A (CommRing.toRing.{u_5} A _inst_8))) (AddCommGroup.toAddCommMonoid.{u_5} A (NonUnitalNonAssocRing.toAddCommGroup.{u_5} A (NonAssocRing.toNonUnitalNonAssocRing.{u_5} A (Ring.toNonAssocRing.{u_5} A (CommRing.toRing.{u_5} A _inst_8))))) M M') (OfNat.ofNat.{max u_6 u_5} (Matrix.{u_6, u_6, u_5} m m A) 1 (OfNat.mk.{max u_6 u_5} (Matrix.{u_6, u_6, u_5} m m A) 1 (One.one.{max u_6 u_5} (Matrix.{u_6, u_6, u_5} m m A) (Matrix.hasOne.{u_5, u_6} m A (fun (a : m) (b : m) => _inst_12 a b) (MulZeroClass.toHasZero.{u_5} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u_5} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_5} A (NonAssocRing.toNonUnitalNonAssocRing.{u_5} A (Ring.toNonAssocRing.{u_5} A (CommRing.toRing.{u_5} A _inst_8)))))) (AddMonoidWithOne.toOne.{u_5} A (AddGroupWithOne.toAddMonoidWithOne.{u_5} A (AddCommGroupWithOne.toAddGroupWithOne.{u_5} A (Ring.toAddCommGroupWithOne.{u_5} A (CommRing.toRing.{u_5} A _inst_8)))))))))) -> (Eq.{succ (max u_7 u_5)} (Matrix.{u_7, u_7, u_5} n n A) (Matrix.mul.{u_5, u_7, u_6, u_7} n m n A _inst_9 (Distrib.toHasMul.{u_5} A (Ring.toDistrib.{u_5} A (CommRing.toRing.{u_5} A _inst_8))) (AddCommGroup.toAddCommMonoid.{u_5} A (NonUnitalNonAssocRing.toAddCommGroup.{u_5} A (NonAssocRing.toNonUnitalNonAssocRing.{u_5} A (Ring.toNonAssocRing.{u_5} A (CommRing.toRing.{u_5} A _inst_8))))) M' M) (OfNat.ofNat.{max u_7 u_5} (Matrix.{u_7, u_7, u_5} n n A) 1 (OfNat.mk.{max u_7 u_5} (Matrix.{u_7, u_7, u_5} n n A) 1 (One.one.{max u_7 u_5} (Matrix.{u_7, u_7, u_5} n n A) (Matrix.hasOne.{u_5, u_7} n A (fun (a : n) (b : n) => _inst_13 a b) (MulZeroClass.toHasZero.{u_5} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u_5} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_5} A (NonAssocRing.toNonUnitalNonAssocRing.{u_5} A (Ring.toNonAssocRing.{u_5} A (CommRing.toRing.{u_5} A _inst_8)))))) (AddMonoidWithOne.toOne.{u_5} A (AddGroupWithOne.toAddMonoidWithOne.{u_5} A (AddCommGroupWithOne.toAddGroupWithOne.{u_5} A (Ring.toAddCommGroupWithOne.{u_5} A (CommRing.toRing.{u_5} A _inst_8)))))))))) -> (Equiv.{succ u_6, succ u_7} m n)
-but is expected to have type
- forall {A : Type.{u_1}} [_inst_8 : CommRing.{u_1} A] {m : Type.{u_2}} {n : Type.{u_3}} [_inst_9 : Fintype.{u_2} m] [_inst_10 : Fintype.{u_3} n] [_inst_11 : Nontrivial.{u_1} A] [_inst_12 : DecidableEq.{succ u_2} m] [_inst_13 : DecidableEq.{succ u_3} n] {M : Matrix.{u_2, u_3, u_1} m n A} {M' : Matrix.{u_3, u_2, u_1} n m A}, (Eq.{max (succ u_1) (succ u_2)} (Matrix.{u_2, u_2, u_1} m m A) (Matrix.mul.{u_1, u_2, u_3, u_2} m n m A _inst_10 (NonUnitalNonAssocRing.toMul.{u_1} A (NonAssocRing.toNonUnitalNonAssocRing.{u_1} A (Ring.toNonAssocRing.{u_1} A (CommRing.toRing.{u_1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u_1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_1} A (NonAssocRing.toNonUnitalNonAssocRing.{u_1} A (Ring.toNonAssocRing.{u_1} A (CommRing.toRing.{u_1} A _inst_8))))) M M') (OfNat.ofNat.{max u_1 u_2} (Matrix.{u_2, u_2, u_1} m m A) 1 (One.toOfNat1.{max u_1 u_2} (Matrix.{u_2, u_2, u_1} m m A) (Matrix.one.{u_1, u_2} m A (fun (a : m) (b : m) => _inst_12 a b) (CommMonoidWithZero.toZero.{u_1} A (CommSemiring.toCommMonoidWithZero.{u_1} A (CommRing.toCommSemiring.{u_1} A _inst_8))) (Semiring.toOne.{u_1} A (CommSemiring.toSemiring.{u_1} A (CommRing.toCommSemiring.{u_1} A _inst_8))))))) -> (Eq.{max (succ u_1) (succ u_3)} (Matrix.{u_3, u_3, u_1} n n A) (Matrix.mul.{u_1, u_3, u_2, u_3} n m n A _inst_9 (NonUnitalNonAssocRing.toMul.{u_1} A (NonAssocRing.toNonUnitalNonAssocRing.{u_1} A (Ring.toNonAssocRing.{u_1} A (CommRing.toRing.{u_1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u_1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_1} A (NonAssocRing.toNonUnitalNonAssocRing.{u_1} A (Ring.toNonAssocRing.{u_1} A (CommRing.toRing.{u_1} A _inst_8))))) M' M) (OfNat.ofNat.{max u_1 u_3} (Matrix.{u_3, u_3, u_1} n n A) 1 (One.toOfNat1.{max u_1 u_3} (Matrix.{u_3, u_3, u_1} n n A) (Matrix.one.{u_1, u_3} n A (fun (a : n) (b : n) => _inst_13 a b) (CommMonoidWithZero.toZero.{u_1} A (CommSemiring.toCommMonoidWithZero.{u_1} A (CommRing.toCommSemiring.{u_1} A _inst_8))) (Semiring.toOne.{u_1} A (CommSemiring.toSemiring.{u_1} A (CommRing.toCommSemiring.{u_1} A _inst_8))))))) -> (Equiv.{succ u_2, succ u_3} m n)
-Case conversion may be inaccurate. Consider using '#align matrix.index_equiv_of_inv Matrix.indexEquivOfInvₓ'. -/
/-- If `M` and `M'` are each other's inverse matrices, they are square matrices up to
equivalence of types. -/
def indexEquivOfInv [Nontrivial A] [DecidableEq m] [DecidableEq n] {M : Matrix m n A}
@@ -102,22 +90,10 @@ def indexEquivOfInv [Nontrivial A] [DecidableEq m] [DecidableEq n] {M : Matrix m
equivOfPiLEquivPi (toLin'OfInv hMM' hM'M)
#align matrix.index_equiv_of_inv Matrix.indexEquivOfInv
-/- warning: matrix.det_comm -> Matrix.det_comm is a dubious translation:
-lean 3 declaration is
- forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {n : Type.{u2}} [_inst_10 : Fintype.{u2} n] [_inst_11 : DecidableEq.{succ u2} n] (M : Matrix.{u2, u2, u1} n n A) (N : Matrix.{u2, u2, u1} n n A), Eq.{succ u1} A (Matrix.det.{u1, u2} n (fun (a : n) (b : n) => _inst_11 a b) _inst_10 A _inst_8 (Matrix.mul.{u1, u2, u2, u2} n n n A _inst_10 (Distrib.toHasMul.{u1} A (Ring.toDistrib.{u1} A (CommRing.toRing.{u1} A _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M N)) (Matrix.det.{u1, u2} n (fun (a : n) (b : n) => _inst_11 a b) _inst_10 A _inst_8 (Matrix.mul.{u1, u2, u2, u2} n n n A _inst_10 (Distrib.toHasMul.{u1} A (Ring.toDistrib.{u1} A (CommRing.toRing.{u1} A _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) N M))
-but is expected to have type
- forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {n : Type.{u2}} [_inst_10 : Fintype.{u2} n] [_inst_11 : DecidableEq.{succ u2} n] (M : Matrix.{u2, u2, u1} n n A) (N : Matrix.{u2, u2, u1} n n A), Eq.{succ u1} A (Matrix.det.{u1, u2} n (fun (a : n) (b : n) => _inst_11 a b) _inst_10 A _inst_8 (Matrix.mul.{u1, u2, u2, u2} n n n A _inst_10 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M N)) (Matrix.det.{u1, u2} n (fun (a : n) (b : n) => _inst_11 a b) _inst_10 A _inst_8 (Matrix.mul.{u1, u2, u2, u2} n n n A _inst_10 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) N M))
-Case conversion may be inaccurate. Consider using '#align matrix.det_comm Matrix.det_commₓ'. -/
theorem det_comm [DecidableEq n] (M N : Matrix n n A) : det (M ⬝ N) = det (N ⬝ M) := by
rw [det_mul, det_mul, mul_comm]
#align matrix.det_comm Matrix.det_comm
-/- warning: matrix.det_comm' -> Matrix.det_comm' is a dubious translation:
-lean 3 declaration is
- forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {m : Type.{u2}} {n : Type.{u3}} [_inst_9 : Fintype.{u2} m] [_inst_10 : Fintype.{u3} n] [_inst_11 : DecidableEq.{succ u2} m] [_inst_12 : DecidableEq.{succ u3} n] {M : Matrix.{u3, u2, u1} n m A} {N : Matrix.{u2, u3, u1} m n A} {M' : Matrix.{u2, u3, u1} m n A}, (Eq.{succ (max u3 u1)} (Matrix.{u3, u3, u1} n n A) (Matrix.mul.{u1, u3, u2, u3} n m n A _inst_9 (Distrib.toHasMul.{u1} A (Ring.toDistrib.{u1} A (CommRing.toRing.{u1} A _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M M') (OfNat.ofNat.{max u3 u1} (Matrix.{u3, u3, u1} n n A) 1 (OfNat.mk.{max u3 u1} (Matrix.{u3, u3, u1} n n A) 1 (One.one.{max u3 u1} (Matrix.{u3, u3, u1} n n A) (Matrix.hasOne.{u1, u3} n A (fun (a : n) (b : n) => _inst_12 a b) (MulZeroClass.toHasZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddMonoidWithOne.toOne.{u1} A (AddGroupWithOne.toAddMonoidWithOne.{u1} A (AddCommGroupWithOne.toAddGroupWithOne.{u1} A (Ring.toAddCommGroupWithOne.{u1} A (CommRing.toRing.{u1} A _inst_8)))))))))) -> (Eq.{succ (max u2 u1)} (Matrix.{u2, u2, u1} m m A) (Matrix.mul.{u1, u2, u3, u2} m n m A _inst_10 (Distrib.toHasMul.{u1} A (Ring.toDistrib.{u1} A (CommRing.toRing.{u1} A _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M' M) (OfNat.ofNat.{max u2 u1} (Matrix.{u2, u2, u1} m m A) 1 (OfNat.mk.{max u2 u1} (Matrix.{u2, u2, u1} m m A) 1 (One.one.{max u2 u1} (Matrix.{u2, u2, u1} m m A) (Matrix.hasOne.{u1, u2} m A (fun (a : m) (b : m) => _inst_11 a b) (MulZeroClass.toHasZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddMonoidWithOne.toOne.{u1} A (AddGroupWithOne.toAddMonoidWithOne.{u1} A (AddCommGroupWithOne.toAddGroupWithOne.{u1} A (Ring.toAddCommGroupWithOne.{u1} A (CommRing.toRing.{u1} A _inst_8)))))))))) -> (Eq.{succ u1} A (Matrix.det.{u1, u3} n (fun (a : n) (b : n) => _inst_12 a b) _inst_10 A _inst_8 (Matrix.mul.{u1, u3, u2, u3} n m n A _inst_9 (Distrib.toHasMul.{u1} A (Ring.toDistrib.{u1} A (CommRing.toRing.{u1} A _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M N)) (Matrix.det.{u1, u2} m (fun (a : m) (b : m) => _inst_11 a b) _inst_9 A _inst_8 (Matrix.mul.{u1, u2, u3, u2} m n m A _inst_10 (Distrib.toHasMul.{u1} A (Ring.toDistrib.{u1} A (CommRing.toRing.{u1} A _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) N M)))
-but is expected to have type
- forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {m : Type.{u3}} {n : Type.{u2}} [_inst_9 : Fintype.{u3} m] [_inst_10 : Fintype.{u2} n] [_inst_11 : DecidableEq.{succ u3} m] [_inst_12 : DecidableEq.{succ u2} n] {M : Matrix.{u2, u3, u1} n m A} {N : Matrix.{u3, u2, u1} m n A} {M' : Matrix.{u3, u2, u1} m n A}, (Eq.{max (succ u1) (succ u2)} (Matrix.{u2, u2, u1} n n A) (Matrix.mul.{u1, u2, u3, u2} n m n A _inst_9 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M M') (OfNat.ofNat.{max u1 u2} (Matrix.{u2, u2, u1} n n A) 1 (One.toOfNat1.{max u1 u2} (Matrix.{u2, u2, u1} n n A) (Matrix.one.{u1, u2} n A (fun (a : n) (b : n) => _inst_12 a b) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (Semiring.toOne.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) -> (Eq.{max (succ u1) (succ u3)} (Matrix.{u3, u3, u1} m m A) (Matrix.mul.{u1, u3, u2, u3} m n m A _inst_10 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M' M) (OfNat.ofNat.{max u1 u3} (Matrix.{u3, u3, u1} m m A) 1 (One.toOfNat1.{max u1 u3} (Matrix.{u3, u3, u1} m m A) (Matrix.one.{u1, u3} m A (fun (a : m) (b : m) => _inst_11 a b) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (Semiring.toOne.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) -> (Eq.{succ u1} A (Matrix.det.{u1, u2} n (fun (a : n) (b : n) => _inst_12 a b) _inst_10 A _inst_8 (Matrix.mul.{u1, u2, u3, u2} n m n A _inst_9 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M N)) (Matrix.det.{u1, u3} m (fun (a : m) (b : m) => _inst_11 a b) _inst_9 A _inst_8 (Matrix.mul.{u1, u3, u2, u3} m n m A _inst_10 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) N M)))
-Case conversion may be inaccurate. Consider using '#align matrix.det_comm' Matrix.det_comm'ₓ'. -/
/-- If there exists a two-sided inverse `M'` for `M` (indexed differently),
then `det (N ⬝ M) = det (M ⬝ N)`. -/
theorem det_comm' [DecidableEq m] [DecidableEq n] {M : Matrix n m A} {N : Matrix m n A}
@@ -131,12 +107,6 @@ theorem det_comm' [DecidableEq m] [DecidableEq n] {M : Matrix n m A} {N : Matrix
submatrix_mul_equiv, Equiv.coe_refl, submatrix_id_id]
#align matrix.det_comm' Matrix.det_comm'
-/- warning: matrix.det_conj_of_mul_eq_one -> Matrix.det_conj_of_mul_eq_one is a dubious translation:
-lean 3 declaration is
- forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {m : Type.{u2}} {n : Type.{u3}} [_inst_9 : Fintype.{u2} m] [_inst_10 : Fintype.{u3} n] [_inst_11 : DecidableEq.{succ u2} m] [_inst_12 : DecidableEq.{succ u3} n] {M : Matrix.{u2, u3, u1} m n A} {M' : Matrix.{u3, u2, u1} n m A} {N : Matrix.{u3, u3, u1} n n A}, (Eq.{succ (max u2 u1)} (Matrix.{u2, u2, u1} m m A) (Matrix.mul.{u1, u2, u3, u2} m n m A _inst_10 (Distrib.toHasMul.{u1} A (Ring.toDistrib.{u1} A (CommRing.toRing.{u1} A _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M M') (OfNat.ofNat.{max u2 u1} (Matrix.{u2, u2, u1} m m A) 1 (OfNat.mk.{max u2 u1} (Matrix.{u2, u2, u1} m m A) 1 (One.one.{max u2 u1} (Matrix.{u2, u2, u1} m m A) (Matrix.hasOne.{u1, u2} m A (fun (a : m) (b : m) => _inst_11 a b) (MulZeroClass.toHasZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddMonoidWithOne.toOne.{u1} A (AddGroupWithOne.toAddMonoidWithOne.{u1} A (AddCommGroupWithOne.toAddGroupWithOne.{u1} A (Ring.toAddCommGroupWithOne.{u1} A (CommRing.toRing.{u1} A _inst_8)))))))))) -> (Eq.{succ (max u3 u1)} (Matrix.{u3, u3, u1} n n A) (Matrix.mul.{u1, u3, u2, u3} n m n A _inst_9 (Distrib.toHasMul.{u1} A (Ring.toDistrib.{u1} A (CommRing.toRing.{u1} A _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M' M) (OfNat.ofNat.{max u3 u1} (Matrix.{u3, u3, u1} n n A) 1 (OfNat.mk.{max u3 u1} (Matrix.{u3, u3, u1} n n A) 1 (One.one.{max u3 u1} (Matrix.{u3, u3, u1} n n A) (Matrix.hasOne.{u1, u3} n A (fun (a : n) (b : n) => _inst_12 a b) (MulZeroClass.toHasZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddMonoidWithOne.toOne.{u1} A (AddGroupWithOne.toAddMonoidWithOne.{u1} A (AddCommGroupWithOne.toAddGroupWithOne.{u1} A (Ring.toAddCommGroupWithOne.{u1} A (CommRing.toRing.{u1} A _inst_8)))))))))) -> (Eq.{succ u1} A (Matrix.det.{u1, u2} m (fun (a : m) (b : m) => _inst_11 a b) _inst_9 A _inst_8 (Matrix.mul.{u1, u2, u3, u2} m n m A _inst_10 (Distrib.toHasMul.{u1} A (Ring.toDistrib.{u1} A (CommRing.toRing.{u1} A _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Matrix.mul.{u1, u2, u3, u3} m n n A _inst_10 (Distrib.toHasMul.{u1} A (Ring.toDistrib.{u1} A (CommRing.toRing.{u1} A _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M N) M')) (Matrix.det.{u1, u3} n (fun (a : n) (b : n) => _inst_12 a b) _inst_10 A _inst_8 N))
-but is expected to have type
- forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {m : Type.{u3}} {n : Type.{u2}} [_inst_9 : Fintype.{u3} m] [_inst_10 : Fintype.{u2} n] [_inst_11 : DecidableEq.{succ u3} m] [_inst_12 : DecidableEq.{succ u2} n] {M : Matrix.{u3, u2, u1} m n A} {M' : Matrix.{u2, u3, u1} n m A} {N : Matrix.{u2, u2, u1} n n A}, (Eq.{max (succ u1) (succ u3)} (Matrix.{u3, u3, u1} m m A) (Matrix.mul.{u1, u3, u2, u3} m n m A _inst_10 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M M') (OfNat.ofNat.{max u1 u3} (Matrix.{u3, u3, u1} m m A) 1 (One.toOfNat1.{max u1 u3} (Matrix.{u3, u3, u1} m m A) (Matrix.one.{u1, u3} m A (fun (a : m) (b : m) => _inst_11 a b) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (Semiring.toOne.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) -> (Eq.{max (succ u1) (succ u2)} (Matrix.{u2, u2, u1} n n A) (Matrix.mul.{u1, u2, u3, u2} n m n A _inst_9 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M' M) (OfNat.ofNat.{max u1 u2} (Matrix.{u2, u2, u1} n n A) 1 (One.toOfNat1.{max u1 u2} (Matrix.{u2, u2, u1} n n A) (Matrix.one.{u1, u2} n A (fun (a : n) (b : n) => _inst_12 a b) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (Semiring.toOne.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) -> (Eq.{succ u1} A (Matrix.det.{u1, u3} m (fun (a : m) (b : m) => _inst_11 a b) _inst_9 A _inst_8 (Matrix.mul.{u1, u3, u2, u3} m n m A _inst_10 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Matrix.mul.{u1, u3, u2, u2} m n n A _inst_10 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M N) M')) (Matrix.det.{u1, u2} n (fun (a : n) (b : n) => _inst_12 a b) _inst_10 A _inst_8 N))
-Case conversion may be inaccurate. Consider using '#align matrix.det_conj_of_mul_eq_one Matrix.det_conj_of_mul_eq_oneₓ'. -/
/-- If `M'` is a two-sided inverse for `M` (indexed differently), `det (M ⬝ N ⬝ M') = det N`.
See `matrix.det_conj` and `matrix.det_conj'` for the case when `M' = M⁻¹` or vice versa. -/
@@ -159,9 +129,6 @@ variable {A : Type _} [CommRing A] [Module A M]
variable {κ : Type _} [Fintype κ]
-/- warning: linear_map.det_to_matrix_eq_det_to_matrix -> LinearMap.det_toMatrix_eq_det_toMatrix is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_map.det_to_matrix_eq_det_to_matrix LinearMap.det_toMatrix_eq_det_toMatrixₓ'. -/
/-- The determinant of `linear_map.to_matrix` does not depend on the choice of basis. -/
theorem det_toMatrix_eq_det_toMatrix [DecidableEq κ] (b : Basis ι A M) (c : Basis κ A M)
(f : M →ₗ[A] M) : det (LinearMap.toMatrix b b f) = det (LinearMap.toMatrix c c f) := by
@@ -187,9 +154,6 @@ irreducible_def detAux : Trunc (Basis ι A M) → (M →ₗ[A] M) →* A :=
#align linear_map.det_aux LinearMap.detAux
-/
-/- warning: linear_map.det_aux_def -> LinearMap.detAux_def' is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_map.det_aux_def LinearMap.detAux_def'ₓ'. -/
/-- Unfold lemma for `det_aux`.
See also `det_aux_def'` which allows you to vary the basis.
@@ -198,26 +162,17 @@ theorem detAux_def' (b : Basis ι A M) (f : M →ₗ[A] M) :
LinearMap.detAux (Trunc.mk b) f = Matrix.det (LinearMap.toMatrix b b f) := by rw [det_aux]; rfl
#align linear_map.det_aux_def LinearMap.detAux_def'
-/- warning: linear_map.det_aux_def' -> LinearMap.detAux_def'' is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_map.det_aux_def' LinearMap.detAux_def''ₓ'. -/
theorem detAux_def'' {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (tb : Trunc <| Basis ι A M)
(b' : Basis ι' A M) (f : M →ₗ[A] M) :
LinearMap.detAux tb f = Matrix.det (LinearMap.toMatrix b' b' f) := by
apply Trunc.induction_on tb; intro b; rw [det_aux_def, det_to_matrix_eq_det_to_matrix b b']
#align linear_map.det_aux_def' LinearMap.detAux_def''
-/- warning: linear_map.det_aux_id -> LinearMap.detAux_id is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_map.det_aux_id LinearMap.detAux_idₓ'. -/
@[simp]
theorem detAux_id (b : Trunc <| Basis ι A M) : LinearMap.detAux b LinearMap.id = 1 :=
(LinearMap.detAux b).map_one
#align linear_map.det_aux_id LinearMap.detAux_id
-/- warning: linear_map.det_aux_comp -> LinearMap.detAux_comp is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_map.det_aux_comp LinearMap.detAux_compₓ'. -/
@[simp]
theorem detAux_comp (b : Trunc <| Basis ι A M) (f g : M →ₗ[A] M) :
LinearMap.detAux b (f.comp g) = LinearMap.detAux b f * LinearMap.detAux b g :=
@@ -241,9 +196,6 @@ protected irreducible_def det : (M →ₗ[A] M) →* A :=
#align linear_map.det LinearMap.det
-/
-/- warning: linear_map.coe_det -> LinearMap.coe_det is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_map.coe_det LinearMap.coe_detₓ'. -/
theorem coe_det [DecidableEq M] :
⇑(LinearMap.det : (M →ₗ[A] M) →* A) =
if H : ∃ s : Finset M, Nonempty (Basis s A M) then
@@ -259,9 +211,6 @@ theorem coe_det [DecidableEq M] :
end
-/- warning: linear_map.det_eq_det_to_matrix_of_finset -> LinearMap.det_eq_det_toMatrix_of_finset is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_map.det_eq_det_to_matrix_of_finset LinearMap.det_eq_det_toMatrix_of_finsetₓ'. -/
-- Auxiliary lemma, the `simp` normal form goes in the other direction
-- (using `linear_map.det_to_matrix`)
theorem det_eq_det_toMatrix_of_finset [DecidableEq M] {s : Finset M} (b : Basis s A M)
@@ -271,9 +220,6 @@ theorem det_eq_det_toMatrix_of_finset [DecidableEq M] {s : Finset M} (b : Basis
rw [LinearMap.coe_det, dif_pos, det_aux_def' _ b] <;> assumption
#align linear_map.det_eq_det_to_matrix_of_finset LinearMap.det_eq_det_toMatrix_of_finset
-/- warning: linear_map.det_to_matrix -> LinearMap.det_toMatrix is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_map.det_to_matrix LinearMap.det_toMatrixₓ'. -/
@[simp]
theorem det_toMatrix (b : Basis ι A M) (f : M →ₗ[A] M) : Matrix.det (toMatrix b b f) = f.det :=
by
@@ -281,34 +227,22 @@ theorem det_toMatrix (b : Basis ι A M) (f : M →ₗ[A] M) : Matrix.det (toMatr
rw [det_eq_det_to_matrix_of_finset b.reindex_finset_range, det_to_matrix_eq_det_to_matrix b]
#align linear_map.det_to_matrix LinearMap.det_toMatrix
-/- warning: linear_map.det_to_matrix' -> LinearMap.det_toMatrix' is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_map.det_to_matrix' LinearMap.det_toMatrix'ₓ'. -/
@[simp]
theorem det_toMatrix' {ι : Type _} [Fintype ι] [DecidableEq ι] (f : (ι → A) →ₗ[A] ι → A) :
det f.toMatrix' = f.det := by simp [← to_matrix_eq_to_matrix']
#align linear_map.det_to_matrix' LinearMap.det_toMatrix'
-/- warning: linear_map.det_to_lin -> LinearMap.det_toLin is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_map.det_to_lin LinearMap.det_toLinₓ'. -/
@[simp]
theorem det_toLin (b : Basis ι R M) (f : Matrix ι ι R) :
LinearMap.det (Matrix.toLin b b f) = f.det := by
rw [← LinearMap.det_toMatrix b, LinearMap.toMatrix_toLin]
#align linear_map.det_to_lin LinearMap.det_toLin
-/- warning: linear_map.det_to_lin' -> LinearMap.det_toLin' is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_map.det_to_lin' LinearMap.det_toLin'ₓ'. -/
@[simp]
theorem det_toLin' (f : Matrix ι ι R) : LinearMap.det f.toLin' = f.det := by
simp only [← to_lin_eq_to_lin', det_to_lin]
#align linear_map.det_to_lin' LinearMap.det_toLin'
-/- warning: linear_map.det_cases -> LinearMap.det_cases is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_map.det_cases LinearMap.det_casesₓ'. -/
/-- To show `P f.det` it suffices to consider `P (to_matrix _ _ f).det` and `P 1`. -/
@[elab_as_elim]
theorem det_cases [DecidableEq M] {P : A → Prop} (f : M →ₗ[A] M)
@@ -321,25 +255,16 @@ theorem det_cases [DecidableEq M] {P : A → Prop} (f : M →ₗ[A] M)
· exact h1
#align linear_map.det_cases LinearMap.det_cases
-/- warning: linear_map.det_comp -> LinearMap.det_comp is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_map.det_comp LinearMap.det_compₓ'. -/
@[simp]
theorem det_comp (f g : M →ₗ[A] M) : (f.comp g).det = f.det * g.det :=
LinearMap.det.map_mul f g
#align linear_map.det_comp LinearMap.det_comp
-/- warning: linear_map.det_id -> LinearMap.det_id is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_map.det_id LinearMap.det_idₓ'. -/
@[simp]
theorem det_id : (LinearMap.id : M →ₗ[A] M).det = 1 :=
LinearMap.det.map_one
#align linear_map.det_id LinearMap.det_id
-/- warning: linear_map.det_smul -> LinearMap.det_smul is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_map.det_smul LinearMap.det_smulₓ'. -/
/-- Multiplying a map by a scalar `c` multiplies its determinant by `c ^ dim M`. -/
@[simp]
theorem det_smul {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCommGroup M] [Module 𝕜 M] (c : 𝕜)
@@ -356,9 +281,6 @@ theorem det_smul {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCommGroup M] [Mod
simp [coe_det, H, this]
#align linear_map.det_smul LinearMap.det_smul
-/- warning: linear_map.det_zero' -> LinearMap.det_zero' is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_map.det_zero' LinearMap.det_zero'ₓ'. -/
theorem det_zero' {ι : Type _} [Finite ι] [Nonempty ι] (b : Basis ι A M) :
LinearMap.det (0 : M →ₗ[A] M) = 0 :=
by
@@ -366,9 +288,6 @@ theorem det_zero' {ι : Type _} [Finite ι] [Nonempty ι] (b : Basis ι A M) :
rwa [← det_to_matrix b, LinearEquiv.map_zero, det_zero]
#align linear_map.det_zero' LinearMap.det_zero'
-/- warning: linear_map.det_zero -> LinearMap.det_zero is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_map.det_zero LinearMap.det_zeroₓ'. -/
/-- In a finite-dimensional vector space, the zero map has determinant `1` in dimension `0`,
and `0` otherwise. We give a formula that also works in infinite dimension, where we define
the determinant to be `1`. -/
@@ -378,9 +297,6 @@ theorem det_zero {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCommGroup M] [Mod
simp only [← zero_smul 𝕜 (1 : M →ₗ[𝕜] M), det_smul, mul_one, MonoidHom.map_one]
#align linear_map.det_zero LinearMap.det_zero
-/- warning: linear_map.det_eq_one_of_subsingleton -> LinearMap.det_eq_one_of_subsingleton is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_map.det_eq_one_of_subsingleton LinearMap.det_eq_one_of_subsingletonₓ'. -/
theorem det_eq_one_of_subsingleton [Subsingleton M] (f : M →ₗ[R] M) : (f : M →ₗ[R] M).det = 1 :=
by
have b : Basis (Fin 0) R M := Basis.empty M
@@ -388,9 +304,6 @@ theorem det_eq_one_of_subsingleton [Subsingleton M] (f : M →ₗ[R] M) : (f : M
exact Matrix.det_isEmpty
#align linear_map.det_eq_one_of_subsingleton LinearMap.det_eq_one_of_subsingleton
-/- warning: linear_map.det_eq_one_of_finrank_eq_zero -> LinearMap.det_eq_one_of_finrank_eq_zero is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_map.det_eq_one_of_finrank_eq_zero LinearMap.det_eq_one_of_finrank_eq_zeroₓ'. -/
theorem det_eq_one_of_finrank_eq_zero {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCommGroup M]
[Module 𝕜 M] (h : FiniteDimensional.finrank 𝕜 M = 0) (f : M →ₗ[𝕜] M) :
(f : M →ₗ[𝕜] M).det = 1 := by
@@ -403,9 +316,6 @@ theorem det_eq_one_of_finrank_eq_zero {𝕜 : Type _} [Field 𝕜] {M : Type _}
exact Matrix.det_isEmpty
#align linear_map.det_eq_one_of_finrank_eq_zero LinearMap.det_eq_one_of_finrank_eq_zero
-/- warning: linear_map.det_conj -> LinearMap.det_conj is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_map.det_conj LinearMap.det_conjₓ'. -/
/-- Conjugating a linear map by a linear equiv does not change its determinant. -/
@[simp]
theorem det_conj {N : Type _} [AddCommGroup N] [Module A N] (f : M →ₗ[A] M) (e : M ≃ₗ[A] N) :
@@ -429,9 +339,6 @@ theorem det_conj {N : Type _} [AddCommGroup N] [Module A N] (f : M →ₗ[A] M)
simp only [coe_det, H, H', Pi.one_apply, dif_neg, not_false_iff]
#align linear_map.det_conj LinearMap.det_conj
-/- warning: linear_map.is_unit_det -> LinearMap.isUnit_det is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_map.is_unit_det LinearMap.isUnit_detₓ'. -/
/-- If a linear map is invertible, so is its determinant. -/
theorem isUnit_det {A : Type _} [CommRing A] [Module A M] (f : M →ₗ[A] M) (hf : IsUnit f) :
IsUnit f.det := by
@@ -441,9 +348,6 @@ theorem isUnit_det {A : Type _} [CommRing A] [Module A M] (f : M →ₗ[A] M) (h
exact isUnit_of_mul_eq_one _ _ this
#align linear_map.is_unit_det LinearMap.isUnit_det
-/- warning: linear_map.finite_dimensional_of_det_ne_one -> LinearMap.finiteDimensional_of_det_ne_one is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_map.finite_dimensional_of_det_ne_one LinearMap.finiteDimensional_of_det_ne_oneₓ'. -/
/-- If a linear map has determinant different from `1`, then the space is finite-dimensional. -/
theorem finiteDimensional_of_det_ne_one {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] (f : M →ₗ[𝕜] M)
(hf : f.det ≠ 1) : FiniteDimensional 𝕜 M :=
@@ -456,9 +360,6 @@ theorem finiteDimensional_of_det_ne_one {𝕜 : Type _} [Field 𝕜] [Module
exact hf.elim
#align linear_map.finite_dimensional_of_det_ne_one LinearMap.finiteDimensional_of_det_ne_one
-/- warning: linear_map.range_lt_top_of_det_eq_zero -> LinearMap.range_lt_top_of_det_eq_zero is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_map.range_lt_top_of_det_eq_zero LinearMap.range_lt_top_of_det_eq_zeroₓ'. -/
/-- If the determinant of a map vanishes, then the map is not onto. -/
theorem range_lt_top_of_det_eq_zero {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] {f : M →ₗ[𝕜] M}
(hf : f.det = 0) : f.range < ⊤ :=
@@ -469,9 +370,6 @@ theorem range_lt_top_of_det_eq_zero {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M]
exact isUnit_iff_ne_zero.1 (f.is_unit_det hf)
#align linear_map.range_lt_top_of_det_eq_zero LinearMap.range_lt_top_of_det_eq_zero
-/- warning: linear_map.bot_lt_ker_of_det_eq_zero -> LinearMap.bot_lt_ker_of_det_eq_zero is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_map.bot_lt_ker_of_det_eq_zero LinearMap.bot_lt_ker_of_det_eq_zeroₓ'. -/
/-- If the determinant of a map vanishes, then the map is not injective. -/
theorem bot_lt_ker_of_det_eq_zero {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] {f : M →ₗ[𝕜] M}
(hf : f.det = 0) : ⊥ < f.ker :=
@@ -486,61 +384,37 @@ end LinearMap
namespace LinearEquiv
-/- warning: linear_equiv.det -> LinearEquiv.det is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)], MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))
-but is expected to have type
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)], MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u1} R (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))
-Case conversion may be inaccurate. Consider using '#align linear_equiv.det LinearEquiv.detₓ'. -/
/-- On a `linear_equiv`, the domain of `linear_map.det` can be promoted to `Rˣ`. -/
protected def det : (M ≃ₗ[R] M) →* Rˣ :=
(Units.map (LinearMap.det : (M →ₗ[R] M) →* R)).comp
(LinearMap.GeneralLinearGroup.generalLinearEquiv R M).symm.toMonoidHom
#align linear_equiv.det LinearEquiv.det
-/- warning: linear_equiv.coe_det -> LinearEquiv.coe_det is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_equiv.coe_det LinearEquiv.coe_detₓ'. -/
@[simp]
theorem coe_det (f : M ≃ₗ[R] M) : ↑f.det = LinearMap.det (f : M →ₗ[R] M) :=
rfl
#align linear_equiv.coe_det LinearEquiv.coe_det
-/- warning: linear_equiv.coe_inv_det -> LinearEquiv.coe_inv_det is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_equiv.coe_inv_det LinearEquiv.coe_inv_detₓ'. -/
@[simp]
theorem coe_inv_det (f : M ≃ₗ[R] M) : ↑f.det⁻¹ = LinearMap.det (f.symm : M →ₗ[R] M) :=
rfl
#align linear_equiv.coe_inv_det LinearEquiv.coe_inv_det
-/- warning: linear_equiv.det_refl -> LinearEquiv.det_refl is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_equiv.det_refl LinearEquiv.det_reflₓ'. -/
@[simp]
theorem det_refl : (LinearEquiv.refl R M).det = 1 :=
Units.ext <| LinearMap.det_id
#align linear_equiv.det_refl LinearEquiv.det_refl
-/- warning: linear_equiv.det_trans -> LinearEquiv.det_trans is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_equiv.det_trans LinearEquiv.det_transₓ'. -/
@[simp]
theorem det_trans (f g : M ≃ₗ[R] M) : (f.trans g).det = g.det * f.det :=
map_mul _ g f
#align linear_equiv.det_trans LinearEquiv.det_trans
-/- warning: linear_equiv.det_symm -> LinearEquiv.det_symm is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_equiv.det_symm LinearEquiv.det_symmₓ'. -/
@[simp]
theorem det_symm (f : M ≃ₗ[R] M) : f.symm.det = f.det⁻¹ :=
map_inv _ f
#align linear_equiv.det_symm LinearEquiv.det_symm
-/- warning: linear_equiv.det_conj -> LinearEquiv.det_conj is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_equiv.det_conj LinearEquiv.det_conjₓ'. -/
/-- Conjugating a linear equiv by a linear equiv does not change its determinant. -/
@[simp]
theorem det_conj (f : M ≃ₗ[R] M) (e : M ≃ₗ[R] M') : ((e.symm.trans f).trans e).det = f.det := by
@@ -549,27 +423,18 @@ theorem det_conj (f : M ≃ₗ[R] M) (e : M ≃ₗ[R] M') : ((e.symm.trans f).tr
end LinearEquiv
-/- warning: linear_equiv.det_mul_det_symm -> LinearEquiv.det_mul_det_symm is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_equiv.det_mul_det_symm LinearEquiv.det_mul_det_symmₓ'. -/
/-- The determinants of a `linear_equiv` and its inverse multiply to 1. -/
@[simp]
theorem LinearEquiv.det_mul_det_symm {A : Type _} [CommRing A] [Module A M] (f : M ≃ₗ[A] M) :
(f : M →ₗ[A] M).det * (f.symm : M →ₗ[A] M).det = 1 := by simp [← LinearMap.det_comp]
#align linear_equiv.det_mul_det_symm LinearEquiv.det_mul_det_symm
-/- warning: linear_equiv.det_symm_mul_det -> LinearEquiv.det_symm_mul_det is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_equiv.det_symm_mul_det LinearEquiv.det_symm_mul_detₓ'. -/
/-- The determinants of a `linear_equiv` and its inverse multiply to 1. -/
@[simp]
theorem LinearEquiv.det_symm_mul_det {A : Type _} [CommRing A] [Module A M] (f : M ≃ₗ[A] M) :
(f.symm : M →ₗ[A] M).det * (f : M →ₗ[A] M).det = 1 := by simp [← LinearMap.det_comp]
#align linear_equiv.det_symm_mul_det LinearEquiv.det_symm_mul_det
-/- warning: linear_equiv.is_unit_det -> LinearEquiv.isUnit_det is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_equiv.is_unit_det LinearEquiv.isUnit_detₓ'. -/
-- Cannot be stated using `linear_map.det` because `f` is not an endomorphism.
theorem LinearEquiv.isUnit_det (f : M ≃ₗ[R] M') (v : Basis ι R M) (v' : Basis ι R M') :
IsUnit (LinearMap.toMatrix v v' f).det :=
@@ -578,27 +443,18 @@ theorem LinearEquiv.isUnit_det (f : M ≃ₗ[R] M') (v : Basis ι R M) (v' : Bas
simpa using (LinearMap.toMatrix_comp v v' v f.symm f).symm
#align linear_equiv.is_unit_det LinearEquiv.isUnit_det
-/- warning: linear_equiv.is_unit_det' -> LinearEquiv.isUnit_det' is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_equiv.is_unit_det' LinearEquiv.isUnit_det'ₓ'. -/
/-- Specialization of `linear_equiv.is_unit_det` -/
theorem LinearEquiv.isUnit_det' {A : Type _} [CommRing A] [Module A M] (f : M ≃ₗ[A] M) :
IsUnit (LinearMap.det (f : M →ₗ[A] M)) :=
isUnit_of_mul_eq_one _ _ f.det_mul_det_symm
#align linear_equiv.is_unit_det' LinearEquiv.isUnit_det'
-/- warning: linear_equiv.det_coe_symm -> LinearEquiv.det_coe_symm is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_equiv.det_coe_symm LinearEquiv.det_coe_symmₓ'. -/
/-- The determinant of `f.symm` is the inverse of that of `f` when `f` is a linear equiv. -/
theorem LinearEquiv.det_coe_symm {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] (f : M ≃ₗ[𝕜] M) :
(f.symm : M →ₗ[𝕜] M).det = (f : M →ₗ[𝕜] M).det⁻¹ := by
field_simp [IsUnit.ne_zero f.is_unit_det']
#align linear_equiv.det_coe_symm LinearEquiv.det_coe_symm
-/- warning: linear_equiv.of_is_unit_det -> LinearEquiv.ofIsUnitDet is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_equiv.of_is_unit_det LinearEquiv.ofIsUnitDetₓ'. -/
/-- Builds a linear equivalence from a linear map whose determinant in some bases is a unit. -/
@[simps]
def LinearEquiv.ofIsUnitDet {f : M →ₗ[R] M'} {v : Basis ι R M} {v' : Basis ι R M'}
@@ -623,18 +479,12 @@ def LinearEquiv.ofIsUnitDet {f : M →ₗ[R] M'} {v : Basis ι R M} {v' : Basis
#align linear_equiv.of_is_unit_det LinearEquiv.ofIsUnitDet
-/- warning: linear_equiv.coe_of_is_unit_det -> LinearEquiv.coe_ofIsUnitDet is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_equiv.coe_of_is_unit_det LinearEquiv.coe_ofIsUnitDetₓ'. -/
@[simp]
theorem LinearEquiv.coe_ofIsUnitDet {f : M →ₗ[R] M'} {v : Basis ι R M} {v' : Basis ι R M'}
(h : IsUnit (LinearMap.toMatrix v v' f).det) : (LinearEquiv.ofIsUnitDet h : M →ₗ[R] M') = f :=
by ext x; rfl
#align linear_equiv.coe_of_is_unit_det LinearEquiv.coe_ofIsUnitDet
-/- warning: linear_map.equiv_of_det_ne_zero -> LinearMap.equivOfDetNeZero is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_map.equiv_of_det_ne_zero LinearMap.equivOfDetNeZeroₓ'. -/
/-- Builds a linear equivalence from a linear map on a finite-dimensional vector space whose
determinant is nonzero. -/
@[reducible]
@@ -648,9 +498,6 @@ def LinearMap.equivOfDetNeZero {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCom
LinearEquiv.ofIsUnitDet this
#align linear_map.equiv_of_det_ne_zero LinearMap.equivOfDetNeZero
-/- warning: linear_map.associated_det_of_eq_comp -> LinearMap.associated_det_of_eq_comp is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_map.associated_det_of_eq_comp LinearMap.associated_det_of_eq_compₓ'. -/
theorem LinearMap.associated_det_of_eq_comp (e : M ≃ₗ[R] M) (f f' : M →ₗ[R] M)
(h : ∀ x, f x = f' (e x)) : Associated f.det f'.det :=
by
@@ -659,9 +506,6 @@ theorem LinearMap.associated_det_of_eq_comp (e : M ≃ₗ[R] M) (f f' : M →ₗ
exact Associated.mul_left _ (associated_one_iff_is_unit.mpr e.is_unit_det')
#align linear_map.associated_det_of_eq_comp LinearMap.associated_det_of_eq_comp
-/- warning: linear_map.associated_det_comp_equiv -> LinearMap.associated_det_comp_equiv is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_map.associated_det_comp_equiv LinearMap.associated_det_comp_equivₓ'. -/
theorem LinearMap.associated_det_comp_equiv {N : Type _} [AddCommGroup N] [Module R N]
(f : N →ₗ[R] M) (e e' : M ≃ₗ[R] N) : Associated (f ∘ₗ ↑e).det (f ∘ₗ ↑e').det :=
by
@@ -696,31 +540,13 @@ def Basis.det : AlternatingMap R M R ι
#align basis.det Basis.det
-/
-/- warning: basis.det_apply -> Basis.det_apply is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (v : ι -> M), Eq.{succ u1} R (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v) (Matrix.det.{u1, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (Basis.toMatrix.{u3, u3, u1, u2} ι ι R M (CommRing.toCommSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 e v))
-but is expected to have type
- forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] (e : Basis.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (v : ι -> M), Eq.{succ u3} R (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u1), succ u3} (AlternatingMap.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (Basis.det.{u3, u2, u1} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v) (Matrix.det.{u3, u1} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (Basis.toMatrix.{u1, u1, u3, u2} ι ι R M (CommRing.toCommSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 e v))
-Case conversion may be inaccurate. Consider using '#align basis.det_apply Basis.det_applyₓ'. -/
theorem Basis.det_apply (v : ι → M) : e.det v = det (e.toMatrix v) :=
rfl
#align basis.det_apply Basis.det_apply
-/- warning: basis.det_self -> Basis.det_self is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3), Eq.{succ u1} R (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (fun (_x : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u1) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) e)) (OfNat.ofNat.{u1} R 1 (OfNat.mk.{u1} R 1 (One.one.{u1} R (AddMonoidWithOne.toOne.{u1} R (AddGroupWithOne.toAddMonoidWithOne.{u1} R (AddCommGroupWithOne.toAddGroupWithOne.{u1} R (Ring.toAddCommGroupWithOne.{u1} R (CommRing.toRing.{u1} R _inst_1))))))))
-but is expected to have type
- forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] (e : Basis.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3), Eq.{succ u3} R (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u1), succ u3} (AlternatingMap.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (Basis.det.{u3, u2, u1} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) e)) (OfNat.ofNat.{u3} R 1 (One.toOfNat1.{u3} R (Semiring.toOne.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))
-Case conversion may be inaccurate. Consider using '#align basis.det_self Basis.det_selfₓ'. -/
theorem Basis.det_self : e.det e = 1 := by simp [e.det_apply]
#align basis.det_self Basis.det_self
-/- warning: basis.det_is_empty -> Basis.det_isEmpty is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) [_inst_8 : IsEmpty.{succ u3} ι], Eq.{max (succ u2) (succ u1) (succ u3)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (AlternatingMap.constOfIsEmpty.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι _inst_8 (OfNat.ofNat.{u1} R 1 (OfNat.mk.{u1} R 1 (One.one.{u1} R (AddMonoidWithOne.toOne.{u1} R (AddGroupWithOne.toAddMonoidWithOne.{u1} R (AddCommGroupWithOne.toAddGroupWithOne.{u1} R (Ring.toAddCommGroupWithOne.{u1} R (CommRing.toRing.{u1} R _inst_1)))))))))
-but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) [_inst_8 : IsEmpty.{succ u3} ι], Eq.{max (max (succ u2) (succ u1)) (succ u3)} (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (AlternatingMap.constOfIsEmpty.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι _inst_8 (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))
-Case conversion may be inaccurate. Consider using '#align basis.det_is_empty Basis.det_isEmptyₓ'. -/
@[simp]
theorem Basis.det_isEmpty [IsEmpty ι] : e.det = AlternatingMap.constOfIsEmpty R M 1 :=
by
@@ -728,22 +554,10 @@ theorem Basis.det_isEmpty [IsEmpty ι] : e.det = AlternatingMap.constOfIsEmpty R
exact Matrix.det_isEmpty
#align basis.det_is_empty Basis.det_isEmpty
-/- warning: basis.det_ne_zero -> Basis.det_ne_zero is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) [_inst_8 : Nontrivial.{u1} R], Ne.{max (succ u2) (succ u1) (succ u3)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (OfNat.ofNat.{max u2 u1 u3} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) 0 (OfNat.mk.{max u2 u1 u3} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) 0 (Zero.zero.{max u2 u1 u3} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (AlternatingMap.zero.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι))))
-but is expected to have type
- forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] (e : Basis.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) [_inst_8 : Nontrivial.{u3} R], Ne.{max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (Basis.det.{u3, u2, u1} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (OfNat.ofNat.{max (max u3 u2) u1} (AlternatingMap.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) 0 (Zero.toOfNat0.{max (max u3 u2) u1} (AlternatingMap.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (AlternatingMap.zero.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι)))
-Case conversion may be inaccurate. Consider using '#align basis.det_ne_zero Basis.det_ne_zeroₓ'. -/
/-- `basis.det` is not the zero map. -/
theorem Basis.det_ne_zero [Nontrivial R] : e.det ≠ 0 := fun h => by simpa [h] using e.det_self
#align basis.det_ne_zero Basis.det_ne_zero
-/- warning: is_basis_iff_det -> is_basis_iff_det is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) {v : ι -> M}, Iff (And (LinearIndependent.{u3, u1, u2} ι R M v (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (Eq.{succ u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (Submodule.span.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 (Set.range.{u2, succ u3} M ι v)) (Top.top.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (Submodule.hasTop.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (IsUnit.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v))
-but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) {v : ι -> M}, Iff (And (LinearIndependent.{u3, u2, u1} ι R M v (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Eq.{succ u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Submodule.span.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 (Set.range.{u1, succ u3} M ι v)) (Top.top.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Submodule.instTopSubmodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (IsUnit.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v))
-Case conversion may be inaccurate. Consider using '#align is_basis_iff_det is_basis_iff_detₓ'. -/
theorem is_basis_iff_det {v : ι → M} :
LinearIndependent R v ∧ span R (Set.range v) = ⊤ ↔ IsUnit (e.det v) :=
by
@@ -763,19 +577,10 @@ theorem is_basis_iff_det {v : ι → M} :
exact ⟨v'.linear_independent, v'.span_eq⟩
#align is_basis_iff_det is_basis_iff_det
-/- warning: basis.is_unit_det -> Basis.isUnit_det is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (e' : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3), IsUnit.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (fun (_x : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u1) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) e'))
-but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (e' : Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3), IsUnit.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) e'))
-Case conversion may be inaccurate. Consider using '#align basis.is_unit_det Basis.isUnit_detₓ'. -/
theorem Basis.isUnit_det (e' : Basis ι R M) : IsUnit (e.det e') :=
(is_basis_iff_det e).mp ⟨e'.LinearIndependent, e'.span_eq⟩
#align basis.is_unit_det Basis.isUnit_det
-/- warning: alternating_map.eq_smul_basis_det -> AlternatingMap.eq_smul_basis_det is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align alternating_map.eq_smul_basis_det AlternatingMap.eq_smul_basis_detₓ'. -/
/-- Any alternating map to `R` where `ι` has the cardinality of a basis equals the determinant
map with respect to that basis, multiplied by the value of that alternating map on that basis. -/
theorem AlternatingMap.eq_smul_basis_det (f : AlternatingMap R M R ι) : f = f e • e.det :=
@@ -786,9 +591,6 @@ theorem AlternatingMap.eq_smul_basis_det (f : AlternatingMap R M R ι) : f = f e
simp [AlternatingMap.map_perm, Basis.det_self]
#align alternating_map.eq_smul_basis_det AlternatingMap.eq_smul_basis_det
-/- warning: alternating_map.map_basis_eq_zero_iff -> AlternatingMap.map_basis_eq_zero_iff is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align alternating_map.map_basis_eq_zero_iff AlternatingMap.map_basis_eq_zero_iffₓ'. -/
@[simp]
theorem AlternatingMap.map_basis_eq_zero_iff {ι : Type _} [Finite ι] (e : Basis ι R M)
(f : AlternatingMap R M R ι) : f e = 0 ↔ f = 0 :=
@@ -798,9 +600,6 @@ theorem AlternatingMap.map_basis_eq_zero_iff {ι : Type _} [Finite ι] (e : Basi
simpa [h] using f.eq_smul_basis_det e, fun h => h.symm ▸ AlternatingMap.zero_apply _⟩
#align alternating_map.map_basis_eq_zero_iff AlternatingMap.map_basis_eq_zero_iff
-/- warning: alternating_map.map_basis_ne_zero_iff -> AlternatingMap.map_basis_ne_zero_iff is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align alternating_map.map_basis_ne_zero_iff AlternatingMap.map_basis_ne_zero_iffₓ'. -/
theorem AlternatingMap.map_basis_ne_zero_iff {ι : Type _} [Finite ι] (e : Basis ι R M)
(f : AlternatingMap R M R ι) : f e ≠ 0 ↔ f ≠ 0 :=
not_congr <| f.map_basis_eq_zero_iff e
@@ -808,9 +607,6 @@ theorem AlternatingMap.map_basis_ne_zero_iff {ι : Type _} [Finite ι] (e : Basi
variable {A : Type _} [CommRing A] [Module A M]
-/- warning: basis.det_comp -> Basis.det_comp is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.det_comp Basis.det_compₓ'. -/
@[simp]
theorem Basis.det_comp (e : Basis ι A M) (f : M →ₗ[A] M) (v : ι → M) :
e.det (f ∘ v) = f.det * e.det v := by
@@ -819,9 +615,6 @@ theorem Basis.det_comp (e : Basis ι A M) (f : M →ₗ[A] M) (v : ι → M) :
e.constr_comp]
#align basis.det_comp Basis.det_comp
-/- warning: basis.det_comp_basis -> Basis.det_comp_basis is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.det_comp_basis Basis.det_comp_basisₓ'. -/
@[simp]
theorem Basis.det_comp_basis [Module A M'] (b : Basis ι A M) (b' : Basis ι A M') (f : M →ₗ[A] M') :
b'.det (f ∘ b) = LinearMap.det (f ∘ₗ (b'.Equiv b (Equiv.refl ι) : M' →ₗ[A] M)) :=
@@ -832,45 +625,27 @@ theorem Basis.det_comp_basis [Module A M'] (b : Basis ι A M) (b' : Basis ι A M
rw [Basis.toMatrix_apply, LinearMap.toMatrix_apply]
#align basis.det_comp_basis Basis.det_comp_basis
-/- warning: basis.det_reindex -> Basis.det_reindex is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.det_reindex Basis.det_reindexₓ'. -/
theorem Basis.det_reindex {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (b : Basis ι R M) (v : ι' → M)
(e : ι ≃ ι') : (b.reindex e).det v = b.det (v ∘ e) := by
rw [Basis.det_apply, Basis.toMatrix_reindex', det_reindex_alg_equiv, Basis.det_apply]
#align basis.det_reindex Basis.det_reindex
-/- warning: basis.det_reindex_symm -> Basis.det_reindex_symm is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.det_reindex_symm Basis.det_reindex_symmₓ'. -/
theorem Basis.det_reindex_symm {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (b : Basis ι R M)
(v : ι → M) (e : ι' ≃ ι) : (b.reindex e.symm).det (v ∘ e) = b.det v := by
rw [Basis.det_reindex, Function.comp.assoc, e.self_comp_symm, Function.comp.right_id]
#align basis.det_reindex_symm Basis.det_reindex_symm
-/- warning: basis.det_map -> Basis.det_map is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.det_map Basis.det_mapₓ'. -/
@[simp]
theorem Basis.det_map (b : Basis ι R M) (f : M ≃ₗ[R] M') (v : ι → M') :
(b.map f).det v = b.det (f.symm ∘ v) := by
rw [Basis.det_apply, Basis.toMatrix_map, Basis.det_apply]
#align basis.det_map Basis.det_map
-/- warning: basis.det_map' -> Basis.det_map' is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.det_map' Basis.det_map'ₓ'. -/
theorem Basis.det_map' (b : Basis ι R M) (f : M ≃ₗ[R] M') :
(b.map f).det = b.det.compLinearMap f.symm :=
AlternatingMap.ext <| b.det_map f
#align basis.det_map' Basis.det_map'
-/- warning: pi.basis_fun_det -> Pi.basisFun_det is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι], Eq.{max (succ (max u2 u1)) (succ u1) (succ u2)} (AlternatingMap.{u1, max u2 u1, u1, u2} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (j : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, max u2 u1, u2} R _inst_1 (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (j : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Pi.Function.module.{u2, u1, u1} ι R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 (Pi.basisFun.{u1, u2} R ι (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_7)) (Matrix.detRowAlternating.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1)
-but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι], Eq.{max (succ u2) (succ u1)} (AlternatingMap.{u2, max u2 u1, u2, u1} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u1, u2} ι (fun (j : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (Pi.module.{u1, u2, u2} ι (fun (x._@.Mathlib.LinearAlgebra.StdBasis._hyg.3573 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (Basis.det.{u2, max u2 u1, u1} R _inst_1 (ι -> R) (Pi.addCommGroup.{u1, u2} ι (fun (j : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u2} R (CommRing.toRing.{u2} R _inst_1))) (Pi.module.{u1, u2, u2} ι (fun (x._@.Mathlib.LinearAlgebra.StdBasis._hyg.3573 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 (Pi.basisFun.{u2, u1} R ι (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_7)) (Matrix.detRowAlternating.{u2, u1} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1)
-Case conversion may be inaccurate. Consider using '#align pi.basis_fun_det Pi.basisFun_detₓ'. -/
@[simp]
theorem Pi.basisFun_det : (Pi.basisFun R ι).det = Matrix.detRowAlternating :=
by
@@ -878,9 +653,6 @@ theorem Pi.basisFun_det : (Pi.basisFun R ι).det = Matrix.detRowAlternating :=
rw [Basis.det_apply, Basis.coePiBasisFun.toMatrix_eq_transpose, det_transpose]
#align pi.basis_fun_det Pi.basisFun_det
-/- warning: basis.det_smul_mk_coord_eq_det_update -> Basis.det_smul_mk_coord_eq_det_update is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align basis.det_smul_mk_coord_eq_det_update Basis.det_smul_mk_coord_eq_det_updateₓ'. -/
/-- If we fix a background basis `e`, then for any other basis `v`, we can characterise the
coordinates provided by `v` in terms of determinants relative to `e`. -/
theorem Basis.det_smul_mk_coord_eq_det_update {v : ι → M} (hli : LinearIndependent R v)
@@ -897,12 +669,6 @@ theorem Basis.det_smul_mk_coord_eq_det_update {v : ι → M} (hli : LinearIndepe
exact e.det.map_eq_zero_of_eq _ (by simp [hik, Function.update_apply]) hik
#align basis.det_smul_mk_coord_eq_det_update Basis.det_smul_mk_coord_eq_det_update
-/- warning: basis.det_units_smul -> Basis.det_unitsSMul is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (w : ι -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))), Eq.{max (succ u2) (succ u1) (succ u3)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 (Basis.unitsSMul.{u3, u1, u2} ι R M (CommRing.toRing.{u1} R _inst_1) _inst_2 _inst_3 e w)) (SMul.smul.{u1, max u2 u1 u3} R (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (AlternatingMap.smul.{u1, u2, u1, u3, u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Module.toDistribMulAction.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (smulCommClass_self.{u1, u1} R R (CommRing.toCommMonoid.{u1} R _inst_1) (Monoid.toMulAction.{u1} R (CommMonoid.toMonoid.{u1} R (CommRing.toCommMonoid.{u1} R _inst_1))))) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (HasLiftT.mk.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (CoeTCₓ.coe.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (coeBase.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (Units.hasCoe.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Inv.inv.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Units.hasInv.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Finset.prod.{u1, u3} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι (CommGroup.toCommMonoid.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Units.instCommGroupUnitsToMonoid.{u1} R (CommRing.toCommMonoid.{u1} R _inst_1))) (Finset.univ.{u3} ι _inst_7) (fun (i : ι) => w i)))) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e))
-but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (w : ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))), Eq.{max (max (succ u2) (succ u1)) (succ u3)} (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 (Basis.unitsSMul.{u3, u2, u1} ι R M (CommRing.toRing.{u2} R _inst_1) _inst_2 _inst_3 e w)) (HSMul.hSMul.{u2, max (max u2 u1) u3, max (max u2 u1) u3} R (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (instHSMul.{u2, max (max u2 u1) u3} R (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (AlternatingMap.smul.{u2, u1, u2, u3, u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (Module.toDistribMulAction.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (smulCommClass_self.{u2, u2} R R (CommRing.toCommMonoid.{u2} R _inst_1) (MulActionWithZero.toMulAction.{u2, u2} R R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (Units.val.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (Inv.inv.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instInv.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Finset.prod.{u2, u3} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) ι (CommGroup.toCommMonoid.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instCommGroupUnitsToMonoid.{u2} R (CommRing.toCommMonoid.{u2} R _inst_1))) (Finset.univ.{u3} ι _inst_7) (fun (i : ι) => w i)))) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e))
-Case conversion may be inaccurate. Consider using '#align basis.det_units_smul Basis.det_unitsSMulₓ'. -/
/-- If a basis is multiplied columnwise by scalars `w : ι → Rˣ`, then the determinant with respect
to this basis is multiplied by the product of the inverse of these scalars. -/
theorem Basis.det_unitsSMul (e : Basis ι R M) (w : ι → Rˣ) :
@@ -917,24 +683,12 @@ theorem Basis.det_unitsSMul (e : Basis ι R M) (w : ι → Rˣ) :
simp [← Finset.prod_inv_distrib]
#align basis.det_units_smul Basis.det_unitsSMul
-/- warning: basis.det_units_smul_self -> Basis.det_unitsSMul_self is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (w : ι -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))), Eq.{succ u1} R (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (fun (_x : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u1) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) (Basis.unitsSMul.{u3, u1, u2} ι R M (CommRing.toRing.{u1} R _inst_1) _inst_2 _inst_3 e w))) (Finset.prod.{u1, u3} R ι (CommRing.toCommMonoid.{u1} R _inst_1) (Finset.univ.{u3} ι _inst_7) (fun (i : ι) => (fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (HasLiftT.mk.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (CoeTCₓ.coe.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (coeBase.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (Units.hasCoe.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (w i)))
-but is expected to have type
- forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] (e : Basis.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (w : ι -> (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))), Eq.{succ u3} R (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u1), succ u3} (AlternatingMap.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (Basis.det.{u3, u2, u1} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (Basis.unitsSMul.{u1, u3, u2} ι R M (CommRing.toRing.{u3} R _inst_1) _inst_2 _inst_3 e w))) (Finset.prod.{u3, u1} R ι (CommRing.toCommMonoid.{u3} R _inst_1) (Finset.univ.{u1} ι _inst_7) (fun (i : ι) => Units.val.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (w i)))
-Case conversion may be inaccurate. Consider using '#align basis.det_units_smul_self Basis.det_unitsSMul_selfₓ'. -/
/-- The determinant of a basis constructed by `units_smul` is the product of the given units. -/
@[simp]
theorem Basis.det_unitsSMul_self (w : ι → Rˣ) : e.det (e.units_smul w) = ∏ i, w i := by
simp [Basis.det_apply]
#align basis.det_units_smul_self Basis.det_unitsSMul_self
-/- warning: basis.det_is_unit_smul -> Basis.det_isUnitSMul is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) {w : ι -> R} (hw : forall (i : ι), IsUnit.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (w i)), Eq.{succ u1} R (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (fun (_x : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u1) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) (Basis.isUnitSMul.{u3, u1, u2} ι R M (CommRing.toRing.{u1} R _inst_1) _inst_2 _inst_3 e (fun (i : ι) => w i) hw))) (Finset.prod.{u1, u3} R ι (CommRing.toCommMonoid.{u1} R _inst_1) (Finset.univ.{u3} ι _inst_7) (fun (i : ι) => w i))
-but is expected to have type
- forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] (e : Basis.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) {w : ι -> R} (hw : forall (i : ι), IsUnit.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (w i)), Eq.{succ u3} R (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u1), succ u3} (AlternatingMap.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (Basis.det.{u3, u2, u1} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (Basis.isUnitSMul.{u1, u3, u2} ι R M (CommRing.toRing.{u3} R _inst_1) _inst_2 _inst_3 e (fun (i : ι) => w i) hw))) (Finset.prod.{u3, u1} R ι (CommRing.toCommMonoid.{u3} R _inst_1) (Finset.univ.{u1} ι _inst_7) (fun (i : ι) => w i))
-Case conversion may be inaccurate. Consider using '#align basis.det_is_unit_smul Basis.det_isUnitSMulₓ'. -/
/-- The determinant of a basis constructed by `is_unit_smul` is the product of the given units. -/
@[simp]
theorem Basis.det_isUnitSMul {w : ι → R} (hw : ∀ i, IsUnit (w i)) :
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -195,10 +195,7 @@ Case conversion may be inaccurate. Consider using '#align linear_map.det_aux_def
See also `det_aux_def'` which allows you to vary the basis.
-/
theorem detAux_def' (b : Basis ι A M) (f : M →ₗ[A] M) :
- LinearMap.detAux (Trunc.mk b) f = Matrix.det (LinearMap.toMatrix b b f) :=
- by
- rw [det_aux]
- rfl
+ LinearMap.detAux (Trunc.mk b) f = Matrix.det (LinearMap.toMatrix b b f) := by rw [det_aux]; rfl
#align linear_map.det_aux_def LinearMap.detAux_def'
/- warning: linear_map.det_aux_def' -> LinearMap.detAux_def'' is a dubious translation:
@@ -206,11 +203,8 @@ theorem detAux_def' (b : Basis ι A M) (f : M →ₗ[A] M) :
Case conversion may be inaccurate. Consider using '#align linear_map.det_aux_def' LinearMap.detAux_def''ₓ'. -/
theorem detAux_def'' {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (tb : Trunc <| Basis ι A M)
(b' : Basis ι' A M) (f : M →ₗ[A] M) :
- LinearMap.detAux tb f = Matrix.det (LinearMap.toMatrix b' b' f) :=
- by
- apply Trunc.induction_on tb
- intro b
- rw [det_aux_def, det_to_matrix_eq_det_to_matrix b b']
+ LinearMap.detAux tb f = Matrix.det (LinearMap.toMatrix b' b' f) := by
+ apply Trunc.induction_on tb; intro b; rw [det_aux_def, det_to_matrix_eq_det_to_matrix b b']
#align linear_map.det_aux_def' LinearMap.detAux_def''
/- warning: linear_map.det_aux_id -> LinearMap.detAux_id is a dubious translation:
@@ -256,8 +250,7 @@ theorem coe_det [DecidableEq M] :
LinearMap.detAux (Trunc.mk H.choose_spec.some)
else 1 :=
by
- ext
- unfold LinearMap.det
+ ext; unfold LinearMap.det
split_ifs
· congr
-- use the correct `decidable_eq` instance
@@ -353,8 +346,7 @@ theorem det_smul {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCommGroup M] [Mod
(f : M →ₗ[𝕜] M) : LinearMap.det (c • f) = c ^ FiniteDimensional.finrank 𝕜 M * LinearMap.det f :=
by
by_cases H : ∃ s : Finset M, Nonempty (Basis s 𝕜 M)
- · have : FiniteDimensional 𝕜 M := by
- rcases H with ⟨s, ⟨hs⟩⟩
+ · have : FiniteDimensional 𝕜 M := by rcases H with ⟨s, ⟨hs⟩⟩;
exact FiniteDimensional.of_fintype_basis hs
simp only [← det_to_matrix (FiniteDimensional.finBasis 𝕜 M), LinearEquiv.map_smul,
Fintype.card_fin, det_smul]
@@ -370,8 +362,7 @@ Case conversion may be inaccurate. Consider using '#align linear_map.det_zero' L
theorem det_zero' {ι : Type _} [Finite ι] [Nonempty ι] (b : Basis ι A M) :
LinearMap.det (0 : M →ₗ[A] M) = 0 :=
by
- haveI := Classical.decEq ι
- cases nonempty_fintype ι
+ haveI := Classical.decEq ι; cases nonempty_fintype ι
rwa [← det_to_matrix b, LinearEquiv.map_zero, det_zero]
#align linear_map.det_zero' LinearMap.det_zero'
@@ -458,8 +449,7 @@ theorem finiteDimensional_of_det_ne_one {𝕜 : Type _} [Field 𝕜] [Module
(hf : f.det ≠ 1) : FiniteDimensional 𝕜 M :=
by
by_cases H : ∃ s : Finset M, Nonempty (Basis s 𝕜 M)
- · rcases H with ⟨s, ⟨hs⟩⟩
- exact FiniteDimensional.of_fintype_basis hs
+ · rcases H with ⟨s, ⟨hs⟩⟩; exact FiniteDimensional.of_fintype_basis hs
·
classical
simp [LinearMap.coe_det, H] at hf
@@ -639,9 +629,7 @@ Case conversion may be inaccurate. Consider using '#align linear_equiv.coe_of_is
@[simp]
theorem LinearEquiv.coe_ofIsUnitDet {f : M →ₗ[R] M'} {v : Basis ι R M} {v' : Basis ι R M'}
(h : IsUnit (LinearMap.toMatrix v v' f).det) : (LinearEquiv.ofIsUnitDet h : M →ₗ[R] M') = f :=
- by
- ext x
- rfl
+ by ext x; rfl
#align linear_equiv.coe_of_is_unit_det LinearEquiv.coe_ofIsUnitDet
/- warning: linear_map.equiv_of_det_ne_zero -> LinearMap.equivOfDetNeZero is a dubious translation:
@@ -666,11 +654,7 @@ Case conversion may be inaccurate. Consider using '#align linear_map.associated_
theorem LinearMap.associated_det_of_eq_comp (e : M ≃ₗ[R] M) (f f' : M →ₗ[R] M)
(h : ∀ x, f x = f' (e x)) : Associated f.det f'.det :=
by
- suffices Associated (f' ∘ₗ ↑e).det f'.det
- by
- convert this using 2
- ext x
- exact h x
+ suffices Associated (f' ∘ₗ ↑e).det f'.det by convert this using 2; ext x; exact h x
rw [← mul_one f'.det, LinearMap.det_comp]
exact Associated.mul_left _ (associated_one_iff_is_unit.mpr e.is_unit_det')
#align linear_map.associated_det_of_eq_comp LinearMap.associated_det_of_eq_comp
@@ -773,8 +757,7 @@ theorem is_basis_iff_det {v : ι → M} :
· intro h
rw [Basis.det_apply, Basis.toMatrix_eq_toMatrix_constr] at h
set v' := Basis.map e (LinearEquiv.ofIsUnitDet h) with v'_def
- have : ⇑v' = v := by
- ext i
+ have : ⇑v' = v := by ext i;
rw [v'_def, Basis.map_apply, LinearEquiv.ofIsUnitDet_apply, e.constr_basis]
rw [← this]
exact ⟨v'.linear_independent, v'.span_eq⟩
@@ -909,8 +892,7 @@ theorem Basis.det_smul_mk_coord_eq_det_update {v : ι → M} (hli : LinearIndepe
rcases eq_or_ne k i with (rfl | hik) <;>
simp only [Algebra.id.smul_eq_mul, Basis.coe_mk, LinearMap.smul_apply, LinearMap.coe_mk,
MultilinearMap.toLinearMap_apply]
- · rw [Basis.mk_coord_apply_eq, mul_one, update_eq_self]
- congr
+ · rw [Basis.mk_coord_apply_eq, mul_one, update_eq_self]; congr
· rw [Basis.mk_coord_apply_ne hik, MulZeroClass.mul_zero, eq_comm]
exact e.det.map_eq_zero_of_eq _ (by simp [hik, Function.update_apply]) hik
#align basis.det_smul_mk_coord_eq_det_update Basis.det_smul_mk_coord_eq_det_update
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -160,10 +160,7 @@ variable {A : Type _} [CommRing A] [Module A M]
variable {κ : Type _} [Fintype κ]
/- warning: linear_map.det_to_matrix_eq_det_to_matrix -> LinearMap.det_toMatrix_eq_det_toMatrix is a dubious translation:
-lean 3 declaration is
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u3}} [_inst_8 : CommRing.{u3} A] [_inst_9 : Module.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {κ : Type.{u4}} [_inst_10 : Fintype.{u4} κ] [_inst_11 : DecidableEq.{succ u4} κ] (b : Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (c : Basis.{u4, u3, u1} κ A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u3} A (Matrix.det.{u3, u2} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (coeFn.{max (succ u1) (succ (max u2 u3)), max (succ u1) (succ (max u2 u3))} (LinearEquiv.{u3, u3, u1, max u2 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (fun (_x : LinearEquiv.{u3, u3, u1, max u2 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) => (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> (Matrix.{u2, u2, u3} ι ι A)) (LinearEquiv.hasCoeToFun.{u3, u3, u1, max u2 u3} A A (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))) (LinearMap.toMatrix.{u3, u2, u2, u1, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f)) (Matrix.det.{u3, u4} κ (fun (a : κ) (b : κ) => _inst_11 a b) _inst_10 A _inst_8 (coeFn.{max (succ u1) (succ (max u4 u3)), max (succ u1) (succ (max u4 u3))} (LinearEquiv.{u3, u3, u1, max u4 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u3} κ κ A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u4, u4, u3} κ κ A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (fun (_x : LinearEquiv.{u3, u3, u1, max u4 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u3} κ κ A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u4, u4, u3} κ κ A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) => (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> (Matrix.{u4, u4, u3} κ κ A)) (LinearEquiv.hasCoeToFun.{u3, u3, u1, max u4 u3} A A (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u3} κ κ A) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u4, u4, u3} κ κ A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))) (LinearMap.toMatrix.{u3, u4, u4, u1, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) κ κ _inst_10 _inst_10 (fun (a : κ) (b : κ) => _inst_11 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 c c) f))
-but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {κ : Type.{u4}} [_inst_10 : Fintype.{u4} κ] [_inst_11 : DecidableEq.{succ u4} κ] (b : Basis.{u3, u2, u1} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (c : Basis.{u4, u2, u1} κ A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} A (Matrix.det.{u2, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => Matrix.{u3, u3, u2} ι ι A) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (SMulZeroClass.toSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toZero.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toAddZeroClass.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u1 u3) u2} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u1 u3) u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u3, u3, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f)) (Matrix.det.{u2, u4} κ (fun (a : κ) (b : κ) => _inst_11 a b) _inst_10 A _inst_8 (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), succ u1, max (succ u2) (succ u4)} (LinearEquiv.{u2, u2, u1, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => Matrix.{u4, u4, u2} κ κ A) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u4, u2, u1, max u2 u4} (LinearEquiv.{u2, u2, u1, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (SMulZeroClass.toSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u2 u4} A (Matrix.{u4, u4, u2} κ κ A) (AddMonoid.toZero.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u4} A (Matrix.{u4, u4, u2} κ κ A) (AddMonoid.toAddZeroClass.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u2 u4} A (Matrix.{u4, u4, u2} κ κ A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u2 u4} A (Matrix.{u4, u4, u2} κ κ A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u4, u2, u1, max u2 u4} (LinearEquiv.{u2, u2, u1, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u2 u4} A (Matrix.{u4, u4, u2} κ κ A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u2 u4, max (max u1 u2) u4} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearEquiv.{u2, u2, u1, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u2 u4, max (max u1 u2) u4} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearEquiv.{u2, u2, u1, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u2 u4} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u4, u4, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) κ κ _inst_10 _inst_10 (fun (a : κ) (b : κ) => _inst_11 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 c c) f))
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_map.det_to_matrix_eq_det_to_matrix LinearMap.det_toMatrix_eq_det_toMatrixₓ'. -/
/-- The determinant of `linear_map.to_matrix` does not depend on the choice of basis. -/
theorem det_toMatrix_eq_det_toMatrix [DecidableEq κ] (b : Basis ι A M) (c : Basis κ A M)
@@ -191,10 +188,7 @@ irreducible_def detAux : Trunc (Basis ι A M) → (M →ₗ[A] M) →* A :=
-/
/- warning: linear_map.det_aux_def -> LinearMap.detAux_def' is a dubious translation:
-lean 3 declaration is
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u3}} [_inst_8 : CommRing.{u3} A] [_inst_9 : Module.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u3} A (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.detAux.{u1, u2, u3} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 (Trunc.mk.{max (succ u2) (succ u3) (succ u1)} (Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) b)) f) (Matrix.det.{u3, u2} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (coeFn.{max (succ u1) (succ (max u2 u3)), max (succ u1) (succ (max u2 u3))} (LinearEquiv.{u3, u3, u1, max u2 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (fun (_x : LinearEquiv.{u3, u3, u1, max u2 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) => (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> (Matrix.{u2, u2, u3} ι ι A)) (LinearEquiv.hasCoeToFun.{u3, u3, u1, max u2 u3} A A (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))) (LinearMap.toMatrix.{u3, u2, u2, u1, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f))
-but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : Basis.{u3, u2, u1} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.detAux.{u1, u3, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 (Trunc.mk.{max (max (succ u2) (succ u3)) (succ u1)} (Basis.{u3, u2, u1} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) b)) f) (Matrix.det.{u2, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => Matrix.{u3, u3, u2} ι ι A) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (SMulZeroClass.toSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toZero.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toAddZeroClass.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u1 u3) u2} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u1 u3) u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u3, u3, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f))
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_map.det_aux_def LinearMap.detAux_def'ₓ'. -/
/-- Unfold lemma for `det_aux`.
@@ -208,10 +202,7 @@ theorem detAux_def' (b : Basis ι A M) (f : M →ₗ[A] M) :
#align linear_map.det_aux_def LinearMap.detAux_def'
/- warning: linear_map.det_aux_def' -> LinearMap.detAux_def'' is a dubious translation:
-lean 3 declaration is
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u3}} [_inst_8 : CommRing.{u3} A] [_inst_9 : Module.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι' : Type.{u4}} [_inst_11 : Fintype.{u4} ι'] [_inst_12 : DecidableEq.{succ u4} ι'] (tb : Trunc.{max (succ u2) (succ u3) (succ u1)} (Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (b' : Basis.{u4, u3, u1} ι' A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u3} A (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.detAux.{u1, u2, u3} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 tb) f) (Matrix.det.{u3, u4} ι' (fun (a : ι') (b : ι') => _inst_12 a b) _inst_11 A _inst_8 (coeFn.{max (succ u1) (succ (max u4 u3)), max (succ u1) (succ (max u4 u3))} (LinearEquiv.{u3, u3, u1, max u4 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u3} ι' ι' A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u4, u4, u3} ι' ι' A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (fun (_x : LinearEquiv.{u3, u3, u1, max u4 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u3} ι' ι' A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u4, u4, u3} ι' ι' A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) => (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> (Matrix.{u4, u4, u3} ι' ι' A)) (LinearEquiv.hasCoeToFun.{u3, u3, u1, max u4 u3} A A (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u3} ι' ι' A) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u4, u4, u3} ι' ι' A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))) (LinearMap.toMatrix.{u3, u4, u4, u1, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) ι' ι' _inst_11 _inst_11 (fun (a : ι') (b : ι') => _inst_12 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b' b') f))
-but is expected to have type
- forall {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] {ι' : Type.{u4}} [_inst_11 : Fintype.{u4} ι'] [_inst_12 : DecidableEq.{succ u4} ι'] (tb : Trunc.{max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u1, u2, u3} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (b' : Basis.{u4, u2, u3} ι' A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.detAux.{u3, u1, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 tb) f) (Matrix.det.{u2, u4} ι' (fun (a : ι') (b : ι') => _inst_12 a b) _inst_11 A _inst_8 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u3, max (succ u2) (succ u4)} (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => Matrix.{u4, u4, u2} ι' ι' A) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u4, u2, u3, max u2 u4} (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (SMulZeroClass.toSMul.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (AddMonoid.toZero.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (AddMonoid.toAddZeroClass.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u4, u2, u3, max u2 u4} (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u3, max u2 u4, max (max u3 u2) u4} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u3, max u2 u4, max (max u3 u2) u4} A A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u3, max u2 u4} A A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u4, u4, u3, u3} A (CommRing.toCommSemiring.{u2} A _inst_8) ι' ι' _inst_11 _inst_11 (fun (a : ι') (b : ι') => _inst_12 a b) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 b' b') f))
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_map.det_aux_def' LinearMap.detAux_def''ₓ'. -/
theorem detAux_def'' {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (tb : Trunc <| Basis ι A M)
(b' : Basis ι' A M) (f : M →ₗ[A] M) :
@@ -223,10 +214,7 @@ theorem detAux_def'' {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (tb : Trunc
#align linear_map.det_aux_def' LinearMap.detAux_def''
/- warning: linear_map.det_aux_id -> LinearMap.detAux_id is a dubious translation:
-lean 3 declaration is
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u3}} [_inst_8 : CommRing.{u3} A] [_inst_9 : Module.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : Trunc.{max (succ u2) (succ u3) (succ u1)} (Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)), Eq.{succ u3} A (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.detAux.{u1, u2, u3} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) (LinearMap.id.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (OfNat.ofNat.{u3} A 1 (OfNat.mk.{u3} A 1 (One.one.{u3} A (AddMonoidWithOne.toOne.{u3} A (AddGroupWithOne.toAddMonoidWithOne.{u3} A (AddCommGroupWithOne.toAddGroupWithOne.{u3} A (Ring.toAddCommGroupWithOne.{u3} A (CommRing.toRing.{u3} A _inst_8))))))))
-but is expected to have type
- forall {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] (b : Trunc.{max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u1, u2, u3} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.detAux.{u3, u1, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) (LinearMap.id.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) _inst_8)))))
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_map.det_aux_id LinearMap.detAux_idₓ'. -/
@[simp]
theorem detAux_id (b : Trunc <| Basis ι A M) : LinearMap.detAux b LinearMap.id = 1 :=
@@ -234,10 +222,7 @@ theorem detAux_id (b : Trunc <| Basis ι A M) : LinearMap.detAux b LinearMap.id
#align linear_map.det_aux_id LinearMap.detAux_id
/- warning: linear_map.det_aux_comp -> LinearMap.detAux_comp is a dubious translation:
-lean 3 declaration is
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u3}} [_inst_8 : CommRing.{u3} A] [_inst_9 : Module.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : Trunc.{max (succ u2) (succ u3) (succ u1)} (Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (f : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (g : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u3} A (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.detAux.{u1, u2, u3} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) (LinearMap.comp.{u3, u3, u3, u1, u1, u1} A A A M M M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) (RingHomCompTriple.right_ids.{u3, u3} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))))) f g)) (HMul.hMul.{u3, u3, u3} A A A (instHMul.{u3} A (Distrib.toHasMul.{u3} A (Ring.toDistrib.{u3} A (CommRing.toRing.{u3} A _inst_8)))) (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.detAux.{u1, u2, u3} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) f) (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.detAux.{u1, u2, u3} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) g))
-but is expected to have type
- forall {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] (b : Trunc.{max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u1, u2, u3} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (f : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (g : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.comp.{u2, u2, u2, u3, u3, u3} A A A M M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) f g)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.detAux.{u3, u1, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) (LinearMap.comp.{u2, u2, u2, u3, u3, u3} A A A M M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) f g)) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) g) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (NonUnitalNonAssocRing.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (NonAssocRing.toNonUnitalNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) _inst_8))))) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.detAux.{u3, u1, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) f) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.detAux.{u3, u1, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) g))
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_map.det_aux_comp LinearMap.detAux_compₓ'. -/
@[simp]
theorem detAux_comp (b : Trunc <| Basis ι A M) (f g : M →ₗ[A] M) :
@@ -263,10 +248,7 @@ protected irreducible_def det : (M →ₗ[A] M) →* A :=
-/
/- warning: linear_map.coe_det -> LinearMap.coe_det is a dubious translation:
-lean 3 declaration is
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_11 : DecidableEq.{succ u1} M], Eq.{max (succ u1) (succ u2)} ((LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9)) (dite.{max (succ u1) (succ u2)} ((LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (Exists.{succ u1} (Finset.{u1} M) (fun (s : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))) (Classical.propDecidable (Exists.{succ u1} (Finset.{u1} M) (fun (s : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (fun (H : Exists.{succ u1} (Finset.{u1} M) (fun (s : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))) => coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.detAux.{u1, u1, u2} M _inst_2 (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) (Exists.choose.{succ u1} (Finset.{u1} M) (fun (a : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) a) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) H)) (fun (a : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) (Exists.choose.{succ u1} (Finset.{u1} M) (fun (a : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) a) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) H)) (b : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) (Exists.choose.{succ u1} (Finset.{u1} M) (fun (a : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) a) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) H)) => Subtype.decidableEq.{u1} M (fun (x : M) => Membership.Mem.{u1, u1} M (Finset.{u1} M) (Finset.hasMem.{u1} M) x (Exists.choose.{succ u1} (Finset.{u1} M) (fun (a : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) a) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) H)) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u1} M (Exists.choose.{succ u1} (Finset.{u1} M) (fun (a : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) a) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) H)) A _inst_8 _inst_9 (Trunc.mk.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) (Exists.choose.{succ u1} (Finset.{u1} M) (fun (a : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) a) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) H)) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (Nonempty.some.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) (Exists.choose.{succ u1} (Finset.{u1} M) (fun (a : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) a) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) H)) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (Exists.choose_spec.{succ u1} (Finset.{u1} M) (fun (s : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) H))))) (fun (H : Not (Exists.{succ u1} (Finset.{u1} M) (fun (s : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) => OfNat.ofNat.{max u1 u2} ((LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) 1 (OfNat.mk.{max u1 u2} ((LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) 1 (One.one.{max u1 u2} ((LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (Pi.instOne.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (ᾰ : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (fun (i : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => AddMonoidWithOne.toOne.{u2} A (AddGroupWithOne.toAddMonoidWithOne.{u2} A (AddCommGroupWithOne.toAddGroupWithOne.{u2} A (Ring.toAddCommGroupWithOne.{u2} A (CommRing.toRing.{u2} A _inst_8))))))))))
-but is expected to have type
- forall {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] [_inst_9 : Module.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] [_inst_11 : DecidableEq.{succ u2} M], Eq.{max (succ u2) (succ u1)} (forall (ᾰ : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9), (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.det.{u2, u1} M _inst_2 A _inst_8 _inst_9)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (a : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) a) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (dite.{max (succ u1) (succ u2)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Exists.{succ u2} (Finset.{u2} M) (fun (s : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))) (Classical.propDecidable (Exists.{succ u2} (Finset.{u2} M) (fun (s : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (fun (H : Exists.{succ u2} (Finset.{u2} M) (fun (s : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))) => LinearMap.detAux.{u2, u2, u1} M _inst_2 (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H))) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H))) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H))) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H)) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u2} M (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H)) A _inst_8 _inst_9 (Trunc.mk.{max (succ u1) (succ u2)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H))) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9) (Nonempty.some.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H))) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9) (Exists.choose_spec.{succ u2} (Finset.{u2} M) (fun (s : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H)))) (fun (H : Not (Exists.{succ u2} (Finset.{u2} M) (fun (s : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) => OfNat.ofNat.{max u2 u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) 1 (One.toOfNat1.{max u2 u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (instOneMonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))))))
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_map.coe_det LinearMap.coe_detₓ'. -/
theorem coe_det [DecidableEq M] :
⇑(LinearMap.det : (M →ₗ[A] M) →* A) =
@@ -285,10 +267,7 @@ theorem coe_det [DecidableEq M] :
end
/- warning: linear_map.det_eq_det_to_matrix_of_finset -> LinearMap.det_eq_det_toMatrix_of_finset is a dubious translation:
-lean 3 declaration is
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_11 : DecidableEq.{succ u1} M] {s : Finset.{u1} M} (b : Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} A (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f) (Matrix.det.{u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (fun (a : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (b : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) => Subtype.decidableEq.{u1} M (fun (x : M) => Membership.Mem.{u1, u1} M (Finset.{u1} M) (Finset.hasMem.{u1} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u1} M s) A _inst_8 (coeFn.{max (succ u1) (succ (max u1 u2)), max (succ u1) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u1, max u1 u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.toMatrix._proof_2.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u1, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.module.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u2, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u2, u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (fun (_x : LinearEquiv.{u2, u2, u1, max u1 u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.toMatrix._proof_2.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u1, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.module.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u2, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u2, u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) => (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A)) (LinearEquiv.hasCoeToFun.{u2, u2, u1, max u1 u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u1, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.module.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u2, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u2, u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.toMatrix._proof_2.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.toMatrix.{u2, u1, u1, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (Finset.Subtype.fintype.{u1} M s) (Finset.Subtype.fintype.{u1} M s) (fun (a : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (b : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) => Subtype.decidableEq.{u1} M (fun (x : M) => Membership.Mem.{u1, u1} M (Finset.{u1} M) (Finset.hasMem.{u1} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f))
-but is expected to have type
- forall {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] [_inst_9 : Module.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] [_inst_11 : DecidableEq.{succ u2} M] {s : Finset.{u2} M} (b : Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9) (f : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) f) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.det.{u2, u1} M _inst_2 A _inst_8 _inst_9) f) (Matrix.det.{u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u2} M s) A _inst_8 (FunLike.coe.{max (succ u2) (succ u1), succ u2, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, u2, max u2 u1} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (SMulZeroClass.toSMul.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Module.toDistribMulAction.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, u2, max u2 u1} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u1, u2, max u2 u1, max u2 u1} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u2, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u2, max u2 u1} A A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.toMatrix.{u1, u2, u2, u2, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Finset.Subtype.fintype.{u2} M s) (Finset.Subtype.fintype.{u2} M s) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 b b) f))
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_map.det_eq_det_to_matrix_of_finset LinearMap.det_eq_det_toMatrix_of_finsetₓ'. -/
-- Auxiliary lemma, the `simp` normal form goes in the other direction
-- (using `linear_map.det_to_matrix`)
@@ -300,10 +279,7 @@ theorem det_eq_det_toMatrix_of_finset [DecidableEq M] {s : Finset M} (b : Basis
#align linear_map.det_eq_det_to_matrix_of_finset LinearMap.det_eq_det_toMatrix_of_finset
/- warning: linear_map.det_to_matrix -> LinearMap.det_toMatrix is a dubious translation:
-lean 3 declaration is
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u3}} [_inst_8 : CommRing.{u3} A] [_inst_9 : Module.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u3} A (Matrix.det.{u3, u2} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (coeFn.{max (succ u1) (succ (max u2 u3)), max (succ u1) (succ (max u2 u3))} (LinearEquiv.{u3, u3, u1, max u2 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (fun (_x : LinearEquiv.{u3, u3, u1, max u2 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) => (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> (Matrix.{u2, u2, u3} ι ι A)) (LinearEquiv.hasCoeToFun.{u3, u3, u1, max u2 u3} A A (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))) (LinearMap.toMatrix.{u3, u2, u2, u1, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f)) (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.det.{u1, u3} M _inst_2 A _inst_8 _inst_9) f)
-but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : Basis.{u3, u2, u1} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} A (Matrix.det.{u2, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => Matrix.{u3, u3, u2} ι ι A) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (SMulZeroClass.toSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toZero.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toAddZeroClass.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u1 u3) u2} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u1 u3) u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u3, u3, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f)
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_map.det_to_matrix LinearMap.det_toMatrixₓ'. -/
@[simp]
theorem det_toMatrix (b : Basis ι A M) (f : M →ₗ[A] M) : Matrix.det (toMatrix b b f) = f.det :=
@@ -313,10 +289,7 @@ theorem det_toMatrix (b : Basis ι A M) (f : M →ₗ[A] M) : Matrix.det (toMatr
#align linear_map.det_to_matrix LinearMap.det_toMatrix
/- warning: linear_map.det_to_matrix' -> LinearMap.det_toMatrix' is a dubious translation:
-lean 3 declaration is
- forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {ι : Type.{u2}} [_inst_11 : Fintype.{u2} ι] [_inst_12 : DecidableEq.{succ u2} ι] (f : LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))), Eq.{succ u1} A (Matrix.det.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_12 a b) _inst_11 A _inst_8 (coeFn.{succ (max u2 u1), succ (max u2 u1)} (LinearEquiv.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_1.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.toMatrix'._proof_2.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_3.{u1, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι)) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (_x : LinearEquiv.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_1.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.toMatrix'._proof_2.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_3.{u1, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι)) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) -> (Matrix.{u2, u2, u1} ι ι A)) (LinearEquiv.hasCoeToFun.{u1, u1, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_3.{u1, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι)) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_1.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.toMatrix'._proof_2.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.toMatrix'.{u1, u2, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι ι _inst_11 (fun (a : ι) (b : ι) => _inst_12 a b)) f)) (coeFn.{max (succ u1) (succ (max u2 u1)), max (succ (max u2 u1)) (succ u1)} (MonoidHom.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u2 u1} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (fun (_x : MonoidHom.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u2 u1} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) => (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) -> A) (MonoidHom.hasCoeToFun.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u2 u1} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.det.{max u2 u1, u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A _inst_8 (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) f)
-but is expected to have type
- forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {ι : Type.{u2}} [_inst_11 : Fintype.{u2} ι] [_inst_12 : DecidableEq.{succ u2} ι] (f : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))), Eq.{succ u1} A (Matrix.det.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_12 a b) _inst_11 A _inst_8 (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (_x : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => Matrix.{u2, u2, u1} ι ι A) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (SMulZeroClass.toSMul.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddMonoid.toZero.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddMonoid.toAddZeroClass.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Module.toDistribMulAction.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, max u2 u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.toMatrix'.{u1, u2, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι ι _inst_11 (fun (a : ι) (b : ι) => _inst_12 a b)) f)) (FunLike.coe.{max (succ u1) (succ (max u1 u2)), succ (max u1 u2), succ u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (_x : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => A) _x) (MulHomClass.toFunLike.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulOneClass.toMul.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.det.{max u1 u2, u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) A _inst_8 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) f)
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_map.det_to_matrix' LinearMap.det_toMatrix'ₓ'. -/
@[simp]
theorem det_toMatrix' {ι : Type _} [Fintype ι] [DecidableEq ι] (f : (ι → A) →ₗ[A] ι → A) :
@@ -324,10 +297,7 @@ theorem det_toMatrix' {ι : Type _} [Fintype ι] [DecidableEq ι] (f : (ι → A
#align linear_map.det_to_matrix' LinearMap.det_toMatrix'
/- warning: linear_map.det_to_lin -> LinearMap.det_toLin is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (b : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (f : Matrix.{u3, u3, u1} ι ι R), Eq.{succ u1} R (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) (coeFn.{max (succ (max u3 u1)) (succ u2), max (succ (max u3 u1)) (succ u2)} (LinearEquiv.{u1, u1, max u3 u1, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.toLin._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.{u3, u3, u1} ι ι R) (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u1, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, u2, u2} R R M M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u3, u3, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u2} R R R M M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_3 (Matrix.toLin._proof_3.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3))) (fun (_x : LinearEquiv.{u1, u1, max u3 u1, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.toLin._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.{u3, u3, u1} ι ι R) (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u1, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, u2, u2} R R M M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u3, u3, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u2} R R R M M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_3 (Matrix.toLin._proof_3.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3))) => (Matrix.{u3, u3, u1} ι ι R) -> (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3)) (LinearEquiv.hasCoeToFun.{u1, u1, max u3 u1, u2} R R (Matrix.{u3, u3, u1} ι ι R) (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, u2, u2} R R M M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u3, u3, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u2} R R R M M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_3 (Matrix.toLin._proof_3.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.toLin._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.toLin.{u1, u3, u3, u2, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 b b) f)) (Matrix.det.{u1, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 f)
-but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (f : Matrix.{u3, u3, u2} ι ι R), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (Matrix.{u3, u3, u2} ι ι R) (fun (a : Matrix.{u3, u3, u2} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Matrix.{u3, u3, u2} ι ι R) => LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) a) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, max u2 u3, u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (AddMonoid.toZero.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (SMulZeroClass.toSMul.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, max u2 u3, u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (SemilinearMapClass.distribMulActionHomClass.{u2, max u2 u3, u1, max (max u2 u1) u3} R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u2 u3, u1, max (max u2 u1) u3} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u2 u3, u1} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (Matrix.toLin.{u2, u3, u3, u1, u1} R (CommRing.toCommSemiring.{u2} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 b b) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (Matrix.{u3, u3, u2} ι ι R) (fun (_x : Matrix.{u3, u3, u2} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Matrix.{u3, u3, u2} ι ι R) => LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, max u2 u3, u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (AddMonoid.toZero.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (SMulZeroClass.toSMul.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, max u2 u3, u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (SemilinearMapClass.distribMulActionHomClass.{u2, max u2 u3, u1, max (max u2 u1) u3} R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u2 u3, u1, max (max u2 u1) u3} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u2 u3, u1} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (Matrix.toLin.{u2, u3, u3, u1, u1} R (CommRing.toCommSemiring.{u2} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 b b) f)) (Matrix.det.{u2, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 f)
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_map.det_to_lin LinearMap.det_toLinₓ'. -/
@[simp]
theorem det_toLin (b : Basis ι R M) (f : Matrix ι ι R) :
@@ -336,10 +306,7 @@ theorem det_toLin (b : Basis ι R M) (f : Matrix ι ι R) :
#align linear_map.det_to_lin LinearMap.det_toLin
/- warning: linear_map.det_to_lin' -> LinearMap.det_toLin' is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] (f : Matrix.{u2, u2, u1} ι ι R), Eq.{succ u1} R (coeFn.{max (succ u1) (succ (max u2 u1)), max (succ (max u2 u1)) (succ u1)} (MonoidHom.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u2 u1} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u2 u1} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) -> R) (MonoidHom.hasCoeToFun.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u2 u1} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{max u2 u1, u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) R _inst_1 (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (coeFn.{succ (max u2 u1), succ (max u2 u1)} (LinearEquiv.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.toLin'._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_3.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι))) (fun (_x : LinearEquiv.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.toLin'._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_3.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι))) => (Matrix.{u2, u2, u1} ι ι R) -> (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u1, u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_3.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.toLin'._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.toLin'.{u1, u2, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b)) f)) (Matrix.det.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 f)
-but is expected to have type
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] (f : Matrix.{u2, u2, u1} ι ι R), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => R) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (Matrix.{u2, u2, u1} ι ι R) (fun (a : Matrix.{u2, u2, u1} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Matrix.{u2, u2, u1} ι ι R) => LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) a) (SMulHomClass.toFunLike.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toZero.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, max u2 u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (Matrix.toLin'.{u1, u2, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b)) f)) (FunLike.coe.{max (succ u1) (succ (max u1 u2)), succ (max u1 u2), succ u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (_x : LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => R) _x) (MulHomClass.toFunLike.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulOneClass.toMul.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulOneClass.toMul.{u1} R (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidHom.monoidHomClass.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (LinearMap.det.{max u1 u2, u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1))) R _inst_1 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (Matrix.{u2, u2, u1} ι ι R) (fun (_x : Matrix.{u2, u2, u1} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Matrix.{u2, u2, u1} ι ι R) => LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toZero.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, max u2 u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (Matrix.toLin'.{u1, u2, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b)) f)) (Matrix.det.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 f)
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_map.det_to_lin' LinearMap.det_toLin'ₓ'. -/
@[simp]
theorem det_toLin' (f : Matrix ι ι R) : LinearMap.det f.toLin' = f.det := by
@@ -347,10 +314,7 @@ theorem det_toLin' (f : Matrix ι ι R) : LinearMap.det f.toLin' = f.det := by
#align linear_map.det_to_lin' LinearMap.det_toLin'
/- warning: linear_map.det_cases -> LinearMap.det_cases is a dubious translation:
-lean 3 declaration is
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_11 : DecidableEq.{succ u1} M] {P : A -> Prop} (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), (forall (s : Finset.{u1} M) (b : Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9), P (Matrix.det.{u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (fun (a : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (b : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) => Subtype.decidableEq.{u1} M (fun (x : M) => Membership.Mem.{u1, u1} M (Finset.{u1} M) (Finset.hasMem.{u1} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u1} M s) A _inst_8 (coeFn.{max (succ u1) (succ (max u1 u2)), max (succ u1) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u1, max u1 u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.toMatrix._proof_2.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u1, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.module.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u2, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u2, u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (fun (_x : LinearEquiv.{u2, u2, u1, max u1 u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.toMatrix._proof_2.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u1, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.module.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u2, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u2, u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) => (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A)) (LinearEquiv.hasCoeToFun.{u2, u2, u1, max u1 u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u1, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.module.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u2, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u2, u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.toMatrix._proof_2.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.toMatrix.{u2, u1, u1, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (Finset.Subtype.fintype.{u1} M s) (Finset.Subtype.fintype.{u1} M s) (fun (a : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (b : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) => Subtype.decidableEq.{u1} M (fun (x : M) => Membership.Mem.{u1, u1} M (Finset.{u1} M) (Finset.hasMem.{u1} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f))) -> (P (OfNat.ofNat.{u2} A 1 (OfNat.mk.{u2} A 1 (One.one.{u2} A (AddMonoidWithOne.toOne.{u2} A (AddGroupWithOne.toAddMonoidWithOne.{u2} A (AddCommGroupWithOne.toAddGroupWithOne.{u2} A (Ring.toAddCommGroupWithOne.{u2} A (CommRing.toRing.{u2} A _inst_8))))))))) -> (P (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f))
-but is expected to have type
- forall {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] [_inst_9 : Module.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] [_inst_11 : DecidableEq.{succ u2} M] {P : A -> Prop} (f : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9), (forall (s : Finset.{u2} M) (b : Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9), P (Matrix.det.{u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u2} M s) A _inst_8 (FunLike.coe.{max (succ u2) (succ u1), succ u2, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, u2, max u2 u1} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (SMulZeroClass.toSMul.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Module.toDistribMulAction.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, u2, max u2 u1} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u1, u2, max u2 u1, max u2 u1} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u2, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u2, max u2 u1} A A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.toMatrix.{u1, u2, u2, u2, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Finset.Subtype.fintype.{u2} M s) (Finset.Subtype.fintype.{u2} M s) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 b b) f))) -> (P (OfNat.ofNat.{u1} A 1 (One.toOfNat1.{u1} A (Semiring.toOne.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) -> (P (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.det.{u2, u1} M _inst_2 A _inst_8 _inst_9) f))
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_map.det_cases LinearMap.det_casesₓ'. -/
/-- To show `P f.det` it suffices to consider `P (to_matrix _ _ f).det` and `P 1`. -/
@[elab_as_elim]
@@ -365,10 +329,7 @@ theorem det_cases [DecidableEq M] {P : A → Prop} (f : M →ₗ[A] M)
#align linear_map.det_cases LinearMap.det_cases
/- warning: linear_map.det_comp -> LinearMap.det_comp is a dubious translation:
-lean 3 declaration is
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (g : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} A (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearMap.comp.{u2, u2, u2, u1, u1, u1} A A A M M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomCompTriple.right_ids.{u2, u2} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))) f g)) (HMul.hMul.{u2, u2, u2} A A A (instHMul.{u2} A (Distrib.toHasMul.{u2} A (Ring.toDistrib.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) g))
-but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (g : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.comp.{u2, u2, u2, u1, u1, u1} A A A M M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) f g)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearMap.comp.{u2, u2, u2, u1, u1, u1} A A A M M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) f g)) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) g) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (NonUnitalNonAssocRing.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (NonAssocRing.toNonUnitalNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) _inst_8))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) g))
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_map.det_comp LinearMap.det_compₓ'. -/
@[simp]
theorem det_comp (f g : M →ₗ[A] M) : (f.comp g).det = f.det * g.det :=
@@ -376,10 +337,7 @@ theorem det_comp (f g : M →ₗ[A] M) : (f.comp g).det = f.det * g.det :=
#align linear_map.det_comp LinearMap.det_comp
/- warning: linear_map.det_id -> LinearMap.det_id is a dubious translation:
-lean 3 declaration is
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)], Eq.{succ u2} A (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearMap.id.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (OfNat.ofNat.{u2} A 1 (OfNat.mk.{u2} A 1 (One.one.{u2} A (AddMonoidWithOne.toOne.{u2} A (AddGroupWithOne.toAddMonoidWithOne.{u2} A (AddCommGroupWithOne.toAddGroupWithOne.{u2} A (Ring.toAddCommGroupWithOne.{u2} A (CommRing.toRing.{u2} A _inst_8))))))))
-but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)], Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearMap.id.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) _inst_8)))))
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_map.det_id LinearMap.det_idₓ'. -/
@[simp]
theorem det_id : (LinearMap.id : M →ₗ[A] M).det = 1 :=
@@ -387,10 +345,7 @@ theorem det_id : (LinearMap.id : M →ₗ[A] M).det = 1 :=
#align linear_map.det_id LinearMap.det_id
/- warning: linear_map.det_smul -> LinearMap.det_smul is a dubious translation:
-lean 3 declaration is
- forall {𝕜 : Type.{u1}} [_inst_11 : Field.{u1} 𝕜] {M : Type.{u2}} [_inst_12 : AddCommGroup.{u2} M] [_inst_13 : Module.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12)] (c : 𝕜) (f : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13), Eq.{succ u1} 𝕜 (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) => (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) -> 𝕜) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) (LinearMap.det.{u2, u1} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)) _inst_13) (SMul.smul.{u1, u2} 𝕜 (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (LinearMap.hasSmul.{u1, u1, u1, u2, u2} 𝕜 𝕜 𝕜 M M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13 (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) (Ring.toMonoid.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (Module.toDistribMulAction.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13) (smulCommClass_self.{u1, u2} 𝕜 M (CommRing.toCommMonoid.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11))) (MulActionWithZero.toMulAction.{u1, u2} 𝕜 M (Semiring.toMonoidWithZero.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11)))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12)))) (Module.toMulActionWithZero.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13)))) c f)) (HMul.hMul.{u1, u1, u1} 𝕜 𝕜 𝕜 (instHMul.{u1} 𝕜 (Distrib.toHasMul.{u1} 𝕜 (Ring.toDistrib.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))) (HPow.hPow.{u1, 0, u1} 𝕜 Nat 𝕜 (instHPow.{u1, 0} 𝕜 Nat (Monoid.Pow.{u1} 𝕜 (Ring.toMonoid.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))) c (FiniteDimensional.finrank.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) _inst_12 _inst_13)) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) => (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) -> 𝕜) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) (LinearMap.det.{u2, u1} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)) _inst_13) f))
-but is expected to have type
- forall {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] {M : Type.{u1}} [_inst_12 : AddCommGroup.{u1} M] [_inst_13 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12)] (c : 𝕜) (f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) (HSMul.hSMul.{u2, u1, u1} 𝕜 (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (instHSMul.{u2, u1} 𝕜 (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.instSMulLinearMap.{u2, u2, u2, u1, u1} 𝕜 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) (MonoidWithZero.toMonoid.{u2} 𝕜 (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) (Module.toDistribMulAction.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13) (smulCommClass_self.{u2, u1} 𝕜 M (CommRing.toCommMonoid.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))) (MulActionWithZero.toMulAction.{u2, u1} 𝕜 M (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_12))))) (Module.toMulActionWithZero.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13))))) c f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_13) (HSMul.hSMul.{u2, u1, u1} 𝕜 (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (instHSMul.{u2, u1} 𝕜 (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.instSMulLinearMap.{u2, u2, u2, u1, u1} 𝕜 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) (MonoidWithZero.toMonoid.{u2} 𝕜 (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) (Module.toDistribMulAction.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13) (smulCommClass_self.{u2, u1} 𝕜 M (CommRing.toCommMonoid.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))) (MulActionWithZero.toMulAction.{u2, u1} 𝕜 M (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_12))))) (Module.toMulActionWithZero.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13))))) c f)) (HMul.hMul.{u2, u2, u2} 𝕜 ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) 𝕜 (instHMul.{u2} 𝕜 (NonUnitalNonAssocRing.toMul.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11)))))) (HPow.hPow.{u2, 0, u2} 𝕜 Nat 𝕜 (instHPow.{u2, 0} 𝕜 Nat (Monoid.Pow.{u2} 𝕜 (MonoidWithZero.toMonoid.{u2} 𝕜 (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))))) c (FiniteDimensional.finrank.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) _inst_12 _inst_13)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_13) f))
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_map.det_smul LinearMap.det_smulₓ'. -/
/-- Multiplying a map by a scalar `c` multiplies its determinant by `c ^ dim M`. -/
@[simp]
@@ -410,10 +365,7 @@ theorem det_smul {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCommGroup M] [Mod
#align linear_map.det_smul LinearMap.det_smul
/- warning: linear_map.det_zero' -> LinearMap.det_zero' is a dubious translation:
-lean 3 declaration is
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_11 : Finite.{succ u3} ι] [_inst_12 : Nonempty.{succ u3} ι], (Basis.{u3, u2, u1} ι A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) -> (Eq.{succ u2} A (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (OfNat.mk.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.zero.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.hasZero.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))))))) (OfNat.ofNat.{u2} A 0 (OfNat.mk.{u2} A 0 (Zero.zero.{u2} A (MulZeroClass.toHasZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))))))))
-but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_11 : Finite.{succ u3} ι] [_inst_12 : Nonempty.{succ u3} ι], (Basis.{u3, u2, u1} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) -> (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (CommMonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (CommSemiring.toCommMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) _inst_8))))))
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_map.det_zero' LinearMap.det_zero'ₓ'. -/
theorem det_zero' {ι : Type _} [Finite ι] [Nonempty ι] (b : Basis ι A M) :
LinearMap.det (0 : M →ₗ[A] M) = 0 :=
@@ -424,10 +376,7 @@ theorem det_zero' {ι : Type _} [Finite ι] [Nonempty ι] (b : Basis ι A M) :
#align linear_map.det_zero' LinearMap.det_zero'
/- warning: linear_map.det_zero -> LinearMap.det_zero is a dubious translation:
-lean 3 declaration is
- forall {𝕜 : Type.{u1}} [_inst_11 : Field.{u1} 𝕜] {M : Type.{u2}} [_inst_12 : AddCommGroup.{u2} M] [_inst_13 : Module.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12)], Eq.{succ u1} 𝕜 (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) => (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) -> 𝕜) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) (LinearMap.det.{u2, u1} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)) _inst_13) (OfNat.ofNat.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 0 (OfNat.mk.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 0 (Zero.zero.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (LinearMap.hasZero.{u1, u1, u2, u2} 𝕜 𝕜 M M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13 (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11)))))))))) (HPow.hPow.{u1, 0, u1} 𝕜 Nat 𝕜 (instHPow.{u1, 0} 𝕜 Nat (Monoid.Pow.{u1} 𝕜 (Ring.toMonoid.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))) (OfNat.ofNat.{u1} 𝕜 0 (OfNat.mk.{u1} 𝕜 0 (Zero.zero.{u1} 𝕜 (MulZeroClass.toHasZero.{u1} 𝕜 (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} 𝕜 (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11)))))))))) (FiniteDimensional.finrank.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) _inst_12 _inst_13))
-but is expected to have type
- forall {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] {M : Type.{u1}} [_inst_12 : AddCommGroup.{u1} M] [_inst_13 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12)], Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_13) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))))))) (HPow.hPow.{u2, 0, u2} 𝕜 Nat 𝕜 (instHPow.{u2, 0} 𝕜 Nat (Monoid.Pow.{u2} 𝕜 (MonoidWithZero.toMonoid.{u2} 𝕜 (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))))) (OfNat.ofNat.{u2} 𝕜 0 (Zero.toOfNat0.{u2} 𝕜 (CommMonoidWithZero.toZero.{u2} 𝕜 (CommGroupWithZero.toCommMonoidWithZero.{u2} 𝕜 (Semifield.toCommGroupWithZero.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))))) (FiniteDimensional.finrank.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) _inst_12 _inst_13))
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_map.det_zero LinearMap.det_zeroₓ'. -/
/-- In a finite-dimensional vector space, the zero map has determinant `1` in dimension `0`,
and `0` otherwise. We give a formula that also works in infinite dimension, where we define
@@ -439,10 +388,7 @@ theorem det_zero {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCommGroup M] [Mod
#align linear_map.det_zero LinearMap.det_zero
/- warning: linear_map.det_eq_one_of_subsingleton -> LinearMap.det_eq_one_of_subsingleton is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] [_inst_11 : Subsingleton.{succ u2} M] (f : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3), Eq.{succ u1} R (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) f) (OfNat.ofNat.{u1} R 1 (OfNat.mk.{u1} R 1 (One.one.{u1} R (AddMonoidWithOne.toOne.{u1} R (AddGroupWithOne.toAddMonoidWithOne.{u1} R (AddCommGroupWithOne.toAddGroupWithOne.{u1} R (Ring.toAddCommGroupWithOne.{u1} R (CommRing.toRing.{u1} R _inst_1))))))))
-but is expected to have type
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] [_inst_11 : Subsingleton.{succ u2} M] (f : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u1} R (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) f) (OfNat.ofNat.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) 1 (One.toOfNat1.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) (Semiring.toOne.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) (CommSemiring.toSemiring.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) (CommRing.toCommSemiring.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) _inst_1)))))
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_map.det_eq_one_of_subsingleton LinearMap.det_eq_one_of_subsingletonₓ'. -/
theorem det_eq_one_of_subsingleton [Subsingleton M] (f : M →ₗ[R] M) : (f : M →ₗ[R] M).det = 1 :=
by
@@ -452,10 +398,7 @@ theorem det_eq_one_of_subsingleton [Subsingleton M] (f : M →ₗ[R] M) : (f : M
#align linear_map.det_eq_one_of_subsingleton LinearMap.det_eq_one_of_subsingleton
/- warning: linear_map.det_eq_one_of_finrank_eq_zero -> LinearMap.det_eq_one_of_finrank_eq_zero is a dubious translation:
-lean 3 declaration is
- forall {𝕜 : Type.{u1}} [_inst_11 : Field.{u1} 𝕜] {M : Type.{u2}} [_inst_12 : AddCommGroup.{u2} M] [_inst_13 : Module.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12)], (Eq.{1} Nat (FiniteDimensional.finrank.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) _inst_12 _inst_13) (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero)))) -> (forall (f : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13), Eq.{succ u1} 𝕜 (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) => (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) -> 𝕜) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) (LinearMap.det.{u2, u1} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)) _inst_13) f) (OfNat.ofNat.{u1} 𝕜 1 (OfNat.mk.{u1} 𝕜 1 (One.one.{u1} 𝕜 (AddMonoidWithOne.toOne.{u1} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u1} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u1} 𝕜 (Ring.toAddCommGroupWithOne.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))))))))
-but is expected to have type
- forall {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] {M : Type.{u1}} [_inst_12 : AddCommGroup.{u1} M] [_inst_13 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12)], (Eq.{1} Nat (FiniteDimensional.finrank.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) _inst_12 _inst_13) (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))) -> (forall (f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_13) f) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) (DivisionSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) (Semifield.toDivisionSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) (Field.toSemifield.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) _inst_11)))))))
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_map.det_eq_one_of_finrank_eq_zero LinearMap.det_eq_one_of_finrank_eq_zeroₓ'. -/
theorem det_eq_one_of_finrank_eq_zero {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCommGroup M]
[Module 𝕜 M] (h : FiniteDimensional.finrank 𝕜 M = 0) (f : M →ₗ[𝕜] M) :
@@ -470,10 +413,7 @@ theorem det_eq_one_of_finrank_eq_zero {𝕜 : Type _} [Field 𝕜] {M : Type _}
#align linear_map.det_eq_one_of_finrank_eq_zero LinearMap.det_eq_one_of_finrank_eq_zero
/- warning: linear_map.det_conj -> LinearMap.det_conj is a dubious translation:
-lean 3 declaration is
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {N : Type.{u3}} [_inst_11 : AddCommGroup.{u3} N] [_inst_12 : Module.{u2, u3} A N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11)] (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (e : LinearEquiv.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12), Eq.{succ u2} A (coeFn.{max (succ u2) (succ u3), max (succ u3) (succ u2)} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.ring.{u2, u3} A N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_11 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.ring.{u2, u3} A N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_11 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) -> A) (MonoidHom.hasCoeToFun.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.ring.{u2, u3} A N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_11 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u3, u2} N _inst_11 A _inst_8 _inst_12) (LinearMap.comp.{u2, u2, u2, u3, u1, u3} A A A N M N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_9 _inst_12 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))) ((fun (a : Sort.{max (succ u1) (succ u3)}) (b : Sort.{max (succ u1) (succ u3)}) [self : HasLiftT.{max (succ u1) (succ u3), max (succ u1) (succ u3)} a b] => self.0) (LinearEquiv.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12) (LinearMap.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12) (HasLiftT.mk.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (LinearEquiv.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12) (LinearMap.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12) (CoeTCₓ.coe.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (LinearEquiv.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12) (LinearMap.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12) (coeBase.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (LinearEquiv.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12) (LinearMap.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u1, u3} A A M N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))))) e) (LinearMap.comp.{u2, u2, u2, u3, u1, u1} A A A N M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))) f ((fun (a : Sort.{max (succ u3) (succ u1)}) (b : Sort.{max (succ u3) (succ u1)}) [self : HasLiftT.{max (succ u3) (succ u1), max (succ u3) (succ u1)} a b] => self.0) (LinearEquiv.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9) (LinearMap.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9) (HasLiftT.mk.{max (succ u3) (succ u1), max (succ u3) (succ u1)} (LinearEquiv.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9) (LinearMap.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9) (CoeTCₓ.coe.{max (succ u3) (succ u1), max (succ u3) (succ u1)} (LinearEquiv.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9) (LinearMap.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9) (coeBase.{max (succ u3) (succ u1), max (succ u3) (succ u1)} (LinearEquiv.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9) (LinearMap.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u3, u1} A A N M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))))) (LinearEquiv.symm.{u2, u2, u1, u3} A A M N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) e))))) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f)
-but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {N : Type.{u3}} [_inst_11 : AddCommGroup.{u3} N] [_inst_12 : Module.{u2, u3} A N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11)] (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (e : LinearEquiv.{u2, u2, u1, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) => A) (LinearMap.comp.{u2, u2, u2, u3, u1, u3} A A A N M N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_9 _inst_12 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearEquiv.toLinearMap.{u2, u2, u1, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12 e) (LinearMap.comp.{u2, u2, u2, u3, u1, u1} A A A N M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) f (LinearEquiv.toLinearMap.{u2, u2, u3, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u3} A A M N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) e))))) (FunLike.coe.{max (succ u2) (succ u3), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.semiring.{u2, u3} A N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) => A) _x) (MulHomClass.toFunLike.{max u2 u3, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.semiring.{u2, u3} A N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.semiring.{u2, u3} A N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u3, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.semiring.{u2, u3} A N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.semiring.{u2, u3} A N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.semiring.{u2, u3} A N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u3, u2} N _inst_11 A _inst_8 _inst_12) (LinearMap.comp.{u2, u2, u2, u3, u1, u3} A A A N M N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_9 _inst_12 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearEquiv.toLinearMap.{u2, u2, u1, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12 e) (LinearMap.comp.{u2, u2, u2, u3, u1, u1} A A A N M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) f (LinearEquiv.toLinearMap.{u2, u2, u3, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u3} A A M N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) e))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f)
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_map.det_conj LinearMap.det_conjₓ'. -/
/-- Conjugating a linear map by a linear equiv does not change its determinant. -/
@[simp]
@@ -499,10 +439,7 @@ theorem det_conj {N : Type _} [AddCommGroup N] [Module A N] (f : M →ₗ[A] M)
#align linear_map.det_conj LinearMap.det_conj
/- warning: linear_map.is_unit_det -> LinearMap.isUnit_det is a dubious translation:
-lean 3 declaration is
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_11 : CommRing.{u2} A] [_inst_12 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12), (IsUnit.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.monoid.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) f) -> (IsUnit.{u2} A (Ring.toMonoid.{u2} A (CommRing.toRing.{u2} A _inst_11)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_11 _inst_12) f))
-but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_11 : CommRing.{u2} A] [_inst_12 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12), (IsUnit.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.monoid.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) f) -> (IsUnit.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) f) (MonoidWithZero.toMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) f) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) f) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) f) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) f) _inst_11)))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_11 _inst_12) f))
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_map.is_unit_det LinearMap.isUnit_detₓ'. -/
/-- If a linear map is invertible, so is its determinant. -/
theorem isUnit_det {A : Type _} [CommRing A] [Module A M] (f : M →ₗ[A] M) (hf : IsUnit f) :
@@ -514,10 +451,7 @@ theorem isUnit_det {A : Type _} [CommRing A] [Module A M] (f : M →ₗ[A] M) (h
#align linear_map.is_unit_det LinearMap.isUnit_det
/- warning: linear_map.finite_dimensional_of_det_ne_one -> LinearMap.finiteDimensional_of_det_ne_one is a dubious translation:
-lean 3 declaration is
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12), (Ne.{succ u2} 𝕜 (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) => (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) -> 𝕜) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} 𝕜 1 (OfNat.mk.{u2} 𝕜 1 (One.one.{u2} 𝕜 (AddMonoidWithOne.toOne.{u2} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u2} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u2} 𝕜 (Ring.toAddCommGroupWithOne.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11)))))))))) -> (FiniteDimensional.{u2, u1} 𝕜 M (Field.toDivisionRing.{u2} 𝕜 _inst_11) _inst_2 _inst_12)
-but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12), (Ne.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (DivisionSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Semifield.toDivisionSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Field.toSemifield.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) _inst_11))))))) -> (FiniteDimensional.{u2, u1} 𝕜 M (Field.toDivisionRing.{u2} 𝕜 _inst_11) _inst_2 _inst_12)
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_map.finite_dimensional_of_det_ne_one LinearMap.finiteDimensional_of_det_ne_oneₓ'. -/
/-- If a linear map has determinant different from `1`, then the space is finite-dimensional. -/
theorem finiteDimensional_of_det_ne_one {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] (f : M →ₗ[𝕜] M)
@@ -533,10 +467,7 @@ theorem finiteDimensional_of_det_ne_one {𝕜 : Type _} [Field 𝕜] [Module
#align linear_map.finite_dimensional_of_det_ne_one LinearMap.finiteDimensional_of_det_ne_one
/- warning: linear_map.range_lt_top_of_det_eq_zero -> LinearMap.range_lt_top_of_det_eq_zero is a dubious translation:
-lean 3 declaration is
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12}, (Eq.{succ u2} 𝕜 (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) => (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) -> 𝕜) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} 𝕜 0 (OfNat.mk.{u2} 𝕜 0 (Zero.zero.{u2} 𝕜 (MulZeroClass.toHasZero.{u2} 𝕜 (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} 𝕜 (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))))))))) -> (LT.lt.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Preorder.toHasLt.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteSemilatticeInf.toPartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteLattice.toCompleteSemilatticeInf.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.completeLattice.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (LinearMap.range.{u2, u2, u1, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (LinearMap.semilinearMapClass.{u2, u2, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11)))))) (RingHomSurjective.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11)))) f) (Top.top.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.hasTop.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))
-but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12}, (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommMonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommGroupWithZero.toCommMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Semifield.toCommGroupWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Field.toSemifield.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) _inst_11))))))) -> (LT.lt.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Preorder.toLT.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.completeLattice.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (LinearMap.range.{u2, u2, u1, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (LinearMap.semilinearMapClass.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))))) (RingHomSurjective.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))) f) (Top.top.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.instTopSubmodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_map.range_lt_top_of_det_eq_zero LinearMap.range_lt_top_of_det_eq_zeroₓ'. -/
/-- If the determinant of a map vanishes, then the map is not onto. -/
theorem range_lt_top_of_det_eq_zero {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] {f : M →ₗ[𝕜] M}
@@ -549,10 +480,7 @@ theorem range_lt_top_of_det_eq_zero {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M]
#align linear_map.range_lt_top_of_det_eq_zero LinearMap.range_lt_top_of_det_eq_zero
/- warning: linear_map.bot_lt_ker_of_det_eq_zero -> LinearMap.bot_lt_ker_of_det_eq_zero is a dubious translation:
-lean 3 declaration is
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12}, (Eq.{succ u2} 𝕜 (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) => (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) -> 𝕜) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} 𝕜 0 (OfNat.mk.{u2} 𝕜 0 (Zero.zero.{u2} 𝕜 (MulZeroClass.toHasZero.{u2} 𝕜 (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} 𝕜 (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))))))))) -> (LT.lt.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Preorder.toHasLt.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteSemilatticeInf.toPartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteLattice.toCompleteSemilatticeInf.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.completeLattice.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (Bot.bot.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.hasBot.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)) (LinearMap.ker.{u2, u2, u1, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (LinearMap.semilinearMapClass.{u2, u2, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11)))))) f))
-but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12}, (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommMonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommGroupWithZero.toCommMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Semifield.toCommGroupWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Field.toSemifield.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) _inst_11))))))) -> (LT.lt.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Preorder.toLT.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.completeLattice.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (Bot.bot.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.instBotSubmodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)) (LinearMap.ker.{u2, u2, u1, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (LinearMap.semilinearMapClass.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))))) f))
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_map.bot_lt_ker_of_det_eq_zero LinearMap.bot_lt_ker_of_det_eq_zeroₓ'. -/
/-- If the determinant of a map vanishes, then the map is not injective. -/
theorem bot_lt_ker_of_det_eq_zero {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] {f : M →ₗ[𝕜] M}
@@ -581,10 +509,7 @@ protected def det : (M ≃ₗ[R] M) →* Rˣ :=
#align linear_equiv.det LinearEquiv.det
/- warning: linear_equiv.coe_det -> LinearEquiv.coe_det is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (f : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3), Eq.{succ u1} R ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (HasLiftT.mk.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (CoeTCₓ.coe.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (coeBase.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (Units.hasCoe.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) f)) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (HasLiftT.mk.{succ u2, succ u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (CoeTCₓ.coe.{succ u2, succ u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (coeBase.{succ u2, succ u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.LinearMap.hasCoe.{u1, u1, u2, u2} R R M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))))) f))
-but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 f)) (Units.val.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 f))
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_equiv.coe_det LinearEquiv.coe_detₓ'. -/
@[simp]
theorem coe_det (f : M ≃ₗ[R] M) : ↑f.det = LinearMap.det (f : M →ₗ[R] M) :=
@@ -592,10 +517,7 @@ theorem coe_det (f : M ≃ₗ[R] M) : ↑f.det = LinearMap.det (f : M →ₗ[R]
#align linear_equiv.coe_det LinearEquiv.coe_det
/- warning: linear_equiv.coe_inv_det -> LinearEquiv.coe_inv_det is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (f : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3), Eq.{succ u1} R ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (HasLiftT.mk.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (CoeTCₓ.coe.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (coeBase.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (Units.hasCoe.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Inv.inv.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Units.hasInv.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) f))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (HasLiftT.mk.{succ u2, succ u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (CoeTCₓ.coe.{succ u2, succ u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (coeBase.{succ u2, succ u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.LinearMap.hasCoe.{u1, u1, u2, u2} R R M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))))) (LinearEquiv.symm.{u1, u1, u2, u2} R R M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) f)))
-but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (LinearEquiv.symm.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) f))) (Units.val.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (Inv.inv.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f) (Units.instInv.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) f))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (LinearEquiv.symm.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) f)))
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_equiv.coe_inv_det LinearEquiv.coe_inv_detₓ'. -/
@[simp]
theorem coe_inv_det (f : M ≃ₗ[R] M) : ↑f.det⁻¹ = LinearMap.det (f.symm : M →ₗ[R] M) :=
@@ -603,10 +525,7 @@ theorem coe_inv_det (f : M ≃ₗ[R] M) : ↑f.det⁻¹ = LinearMap.det (f.symm
#align linear_equiv.coe_inv_det LinearEquiv.coe_inv_det
/- warning: linear_equiv.det_refl -> LinearEquiv.det_refl is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)], Eq.{succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) (LinearEquiv.refl.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) (OfNat.ofNat.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) 1 (OfNat.mk.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) 1 (One.one.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (MulOneClass.toHasOne.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))))))
-but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)], Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (InvOneClass.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (DivInvOneMonoid.toInvOneClass.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (DivisionMonoid.toDivInvOneMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (DivisionCommMonoid.toDivisionMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (CommGroup.toDivisionCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (Units.instCommGroupUnitsToMonoid.{u2} R (CommRing.toCommMonoid.{u2} R _inst_1)))))))))
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_equiv.det_refl LinearEquiv.det_reflₓ'. -/
@[simp]
theorem det_refl : (LinearEquiv.refl R M).det = 1 :=
@@ -614,10 +533,7 @@ theorem det_refl : (LinearEquiv.refl R M).det = 1 :=
#align linear_equiv.det_refl LinearEquiv.det_refl
/- warning: linear_equiv.det_trans -> LinearEquiv.det_trans is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (f : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (g : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3), Eq.{succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) (LinearEquiv.trans.{u1, u1, u1, u2, u2, u2} R R R M M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomCompTriple.right_ids.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (RingHomCompTriple.right_ids.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (LinearEquiv.det._proof_2.{u1} R _inst_1) f g)) (HMul.hMul.{u1, u1, u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (instHMul.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (MulOneClass.toHasMul.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) g) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) f))
-but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (g : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.trans.{u2, u2, u2, u1, u1, u1} R R R M M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) f g)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) (LinearEquiv.trans.{u2, u2, u2, u1, u1, u1} R R R M M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) f g)) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) g) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) g) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) g) (MulOneClass.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) g) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) g) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) f))
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_equiv.det_trans LinearEquiv.det_transₓ'. -/
@[simp]
theorem det_trans (f g : M ≃ₗ[R] M) : (f.trans g).det = g.det * f.det :=
@@ -625,10 +541,7 @@ theorem det_trans (f g : M ≃ₗ[R] M) : (f.trans g).det = g.det * f.det :=
#align linear_equiv.det_trans LinearEquiv.det_trans
/- warning: linear_equiv.det_symm -> LinearEquiv.det_symm is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (f : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3), Eq.{succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) (LinearEquiv.symm.{u1, u1, u2, u2} R R M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) f)) (Inv.inv.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Units.hasInv.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) f))
-but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.symm.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) f)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) (LinearEquiv.symm.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) f)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (a : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) a) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) (Inv.inv.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (InvOneClass.toInv.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvOneMonoid.toInvOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivisionMonoid.toDivInvOneMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivisionMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) f))
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_equiv.det_symm LinearEquiv.det_symmₓ'. -/
@[simp]
theorem det_symm (f : M ≃ₗ[R] M) : f.symm.det = f.det⁻¹ :=
@@ -636,10 +549,7 @@ theorem det_symm (f : M ≃ₗ[R] M) : f.symm.det = f.det⁻¹ :=
#align linear_equiv.det_symm LinearEquiv.det_symm
/- warning: linear_equiv.det_conj -> LinearEquiv.det_conj is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] [_inst_5 : Module.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] (f : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (e : LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5), Eq.{succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (coeFn.{max (succ u1) (succ u3), max (succ u3) (succ u1)} (MonoidHom.{u3, u1} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u3, u1} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u3, u1} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u3} R _inst_1 M' _inst_4 _inst_5) (LinearEquiv.trans.{u1, u1, u1, u3, u2, u3} R R R M' M M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomCompTriple.right_ids.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (RingHomCompTriple.right_ids.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (LinearEquiv.det._proof_2.{u1} R _inst_1) (LinearEquiv.trans.{u1, u1, u1, u3, u2, u2} R R R M' M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomCompTriple.right_ids.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (RingHomCompTriple.right_ids.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (LinearEquiv.symm.{u1, u1, u2, u3} R R M M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) e) f) e)) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) f)
-but is expected to have type
- forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u1}} [_inst_4 : AddCommGroup.{u1} M'] [_inst_5 : Module.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4)] (f : LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (e : LinearEquiv.{u3, u3, u2, u1} 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))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) => Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (LinearEquiv.trans.{u3, u3, u3, u1, u2, u1} R R R M' M M' (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)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_3 _inst_5 (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)))) (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)))) (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)))) (RingHomCompTriple.ids.{u3, u3} 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))))) (RingHomCompTriple.ids.{u3, u3} 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))))) (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))) (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))) (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.trans.{u3, u3, u3, u1, u2, u2} R R R M' M M (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)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 _inst_3 (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)))) (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)))) (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)))) (RingHomCompTriple.ids.{u3, u3} 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))))) (RingHomCompTriple.ids.{u3, u3} 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))))) (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))) (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))) (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.symm.{u3, u3, u2, u1} R R M M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5 (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))) e) f) e)) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (MonoidHom.{u1, u3} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (fun (_x : LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) => Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u3, u1, u3} (MonoidHom.{u1, u3} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5))))) (MulOneClass.toMul.{u3} (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u3, u1, u3} (MonoidHom.{u1, u3} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u3} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (LinearEquiv.det.{u3, u1} R _inst_1 M' _inst_4 _inst_5) (LinearEquiv.trans.{u3, u3, u3, u1, u2, u1} R R R M' M M' (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)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_3 _inst_5 (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)))) (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)))) (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)))) (RingHomCompTriple.ids.{u3, u3} 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))))) (RingHomCompTriple.ids.{u3, u3} 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))))) (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))) (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))) (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.trans.{u3, u3, u3, u1, u2, u2} R R R M' M M (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)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 _inst_3 (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)))) (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)))) (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)))) (RingHomCompTriple.ids.{u3, u3} 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))))) (RingHomCompTriple.ids.{u3, u3} 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))))) (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))) (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))) (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.symm.{u3, u3, u2, u1} R R M M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5 (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))) e) f) e)) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (MonoidHom.{u2, u3} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u2 u3, u2, u3} (MonoidHom.{u2, u3} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MulOneClass.toMul.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u3} (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u3, u2, u3} (MonoidHom.{u2, u3} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MonoidHom.monoidHomClass.{u2, u3} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (LinearEquiv.det.{u3, u2} R _inst_1 M _inst_2 _inst_3) f)
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_equiv.det_conj LinearEquiv.det_conjₓ'. -/
/-- Conjugating a linear equiv by a linear equiv does not change its determinant. -/
@[simp]
@@ -650,10 +560,7 @@ theorem det_conj (f : M ≃ₗ[R] M) (e : M ≃ₗ[R] M') : ((e.symm.trans f).tr
end LinearEquiv
/- warning: linear_equiv.det_mul_det_symm -> LinearEquiv.det_mul_det_symm is a dubious translation:
-lean 3 declaration is
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} A (HMul.hMul.{u2, u2, u2} A A A (instHMul.{u2} A (Distrib.toHasMul.{u2} A (Ring.toDistrib.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (HasLiftT.mk.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CoeTCₓ.coe.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (coeBase.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))))) f)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (HasLiftT.mk.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CoeTCₓ.coe.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (coeBase.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))))) (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f)))) (OfNat.ofNat.{u2} A 1 (OfNat.mk.{u2} A 1 (One.one.{u2} A (AddMonoidWithOne.toOne.{u2} A (AddGroupWithOne.toAddMonoidWithOne.{u2} A (AddCommGroupWithOne.toAddGroupWithOne.{u2} A (Ring.toAddCommGroupWithOne.{u2} A (CommRing.toRing.{u2} A _inst_8))))))))
-but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (NonUnitalNonAssocRing.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (NonAssocRing.toNonUnitalNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) _inst_8))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f)))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) _inst_8)))))
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_equiv.det_mul_det_symm LinearEquiv.det_mul_det_symmₓ'. -/
/-- The determinants of a `linear_equiv` and its inverse multiply to 1. -/
@[simp]
@@ -662,10 +569,7 @@ theorem LinearEquiv.det_mul_det_symm {A : Type _} [CommRing A] [Module A M] (f :
#align linear_equiv.det_mul_det_symm LinearEquiv.det_mul_det_symm
/- warning: linear_equiv.det_symm_mul_det -> LinearEquiv.det_symm_mul_det is a dubious translation:
-lean 3 declaration is
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} A (HMul.hMul.{u2, u2, u2} A A A (instHMul.{u2} A (Distrib.toHasMul.{u2} A (Ring.toDistrib.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (HasLiftT.mk.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CoeTCₓ.coe.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (coeBase.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))))) (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f))) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (HasLiftT.mk.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CoeTCₓ.coe.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (coeBase.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))))) f))) (OfNat.ofNat.{u2} A 1 (OfNat.mk.{u2} A 1 (One.one.{u2} A (AddMonoidWithOne.toOne.{u2} A (AddGroupWithOne.toAddMonoidWithOne.{u2} A (AddCommGroupWithOne.toAddGroupWithOne.{u2} A (Ring.toAddCommGroupWithOne.{u2} A (CommRing.toRing.{u2} A _inst_8))))))))
-but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (NonUnitalNonAssocRing.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (NonAssocRing.toNonUnitalNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) _inst_8))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) _inst_8)))))
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_equiv.det_symm_mul_det LinearEquiv.det_symm_mul_detₓ'. -/
/-- The determinants of a `linear_equiv` and its inverse multiply to 1. -/
@[simp]
@@ -674,10 +578,7 @@ theorem LinearEquiv.det_symm_mul_det {A : Type _} [CommRing A] [Module A M] (f :
#align linear_equiv.det_symm_mul_det LinearEquiv.det_symm_mul_det
/- warning: linear_equiv.is_unit_det -> LinearEquiv.isUnit_det is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] [_inst_5 : Module.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] {ι : Type.{u4}} [_inst_6 : DecidableEq.{succ u4} ι] [_inst_7 : Fintype.{u4} ι] (f : LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (v : Basis.{u4, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (v' : Basis.{u4, u1, u3} ι R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5), IsUnit.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Matrix.det.{u1, u4} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (coeFn.{max (succ (max u2 u3)) (succ (max u4 u1)), max (succ (max u2 u3)) (succ (max u4 u1))} (LinearEquiv.{u1, u1, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.toMatrix._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.toMatrix._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearMap.toMatrix._proof_3.{u1, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (_x : LinearEquiv.{u1, u1, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.toMatrix._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.toMatrix._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearMap.toMatrix._proof_3.{u1, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) -> (Matrix.{u4, u4, u1} ι ι R)) (LinearEquiv.hasCoeToFun.{u1, u1, max u2 u3, max u4 u1} R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearMap.toMatrix._proof_3.{u1, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.toMatrix._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.toMatrix._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.toMatrix.{u1, u4, u4, u2, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 v v') ((fun (a : Sort.{max (succ u2) (succ u3)}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{max (succ u2) (succ u3), max (succ u2) (succ u3)} a b] => self.0) (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (HasLiftT.mk.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (CoeTCₓ.coe.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (coeBase.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearEquiv.LinearMap.hasCoe.{u1, u1, u2, u3} R R M M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))))) f)))
-but is expected to have type
- forall {R : Type.{u4}} [_inst_1 : CommRing.{u4} R] {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] [_inst_3 : Module.{u4, u3} R M (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] {M' : Type.{u2}} [_inst_4 : AddCommGroup.{u2} M'] [_inst_5 : Module.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] (f : LinearEquiv.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (v : Basis.{u1, u4, u3} ι R M (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (v' : Basis.{u1, u4, u2} ι R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5), IsUnit.{u4} R (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (Matrix.det.{u4, u1} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (FunLike.coe.{max (max (max (succ u4) (succ u3)) (succ u2)) (succ u1), max (succ u3) (succ u2), max (succ u4) (succ u1)} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (fun (_x : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) => Matrix.{u1, u1, u4} ι ι R) _x) (SMulHomClass.toFunLike.{max (max (max u4 u3) u2) u1, u4, max u3 u2, max u4 u1} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (SMulZeroClass.toSMul.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toZero.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Module.toDistribMulAction.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))))))) (SMulZeroClass.toSMul.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (AddMonoid.toZero.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (AddMonoid.toAddZeroClass.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (Module.toDistribMulAction.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max (max u4 u3) u2) u1, u4, max u3 u2, max u4 u1} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (Module.toDistribMulAction.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5))))) (Module.toDistribMulAction.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (SemilinearMapClass.distribMulActionHomClass.{u4, max u3 u2, max u4 u1, max (max (max u4 u3) u2) u1} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (SemilinearEquivClass.instSemilinearMapClass.{u4, u4, max u3 u2, max u4 u1, max (max (max u4 u3) u2) u1} R R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u4, u4, max u3 u2, max u4 u1} R R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (LinearMap.toMatrix.{u4, u1, u1, u3, u2} R (CommRing.toCommSemiring.{u4} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 v v') (LinearEquiv.toLinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 f)))
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_equiv.is_unit_det LinearEquiv.isUnit_detₓ'. -/
-- Cannot be stated using `linear_map.det` because `f` is not an endomorphism.
theorem LinearEquiv.isUnit_det (f : M ≃ₗ[R] M') (v : Basis ι R M) (v' : Basis ι R M') :
@@ -688,10 +589,7 @@ theorem LinearEquiv.isUnit_det (f : M ≃ₗ[R] M') (v : Basis ι R M) (v' : Bas
#align linear_equiv.is_unit_det LinearEquiv.isUnit_det
/- warning: linear_equiv.is_unit_det' -> LinearEquiv.isUnit_det' is a dubious translation:
-lean 3 declaration is
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), IsUnit.{u2} A (Ring.toMonoid.{u2} A (CommRing.toRing.{u2} A _inst_8)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (HasLiftT.mk.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CoeTCₓ.coe.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (coeBase.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))))) f))
-but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), IsUnit.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (MonoidWithZero.toMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) _inst_8)))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f))
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_equiv.is_unit_det' LinearEquiv.isUnit_det'ₓ'. -/
/-- Specialization of `linear_equiv.is_unit_det` -/
theorem LinearEquiv.isUnit_det' {A : Type _} [CommRing A] [Module A M] (f : M ≃ₗ[A] M) :
@@ -700,10 +598,7 @@ theorem LinearEquiv.isUnit_det' {A : Type _} [CommRing A] [Module A M] (f : M
#align linear_equiv.is_unit_det' LinearEquiv.isUnit_det'
/- warning: linear_equiv.det_coe_symm -> LinearEquiv.det_coe_symm is a dubious translation:
-lean 3 declaration is
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_8 : Field.{u2} 𝕜] [_inst_9 : Module.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} 𝕜 (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) => (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> 𝕜) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)) _inst_9) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (HasLiftT.mk.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CoeTCₓ.coe.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (coeBase.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))))))) (LinearEquiv.symm.{u2, u2, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) f))) (Inv.inv.{u2} 𝕜 (DivInvMonoid.toHasInv.{u2} 𝕜 (DivisionRing.toDivInvMonoid.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) => (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> 𝕜) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)) _inst_9) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (HasLiftT.mk.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CoeTCₓ.coe.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (coeBase.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))))))) f)))
-but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_8 : Field.{u2} 𝕜] [_inst_9 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => 𝕜) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) f))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)) _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) f))) (Inv.inv.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => 𝕜) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (Field.toInv.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => 𝕜) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) _inst_8) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)) _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)))
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_equiv.det_coe_symm LinearEquiv.det_coe_symmₓ'. -/
/-- The determinant of `f.symm` is the inverse of that of `f` when `f` is a linear equiv. -/
theorem LinearEquiv.det_coe_symm {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] (f : M ≃ₗ[𝕜] M) :
@@ -712,10 +607,7 @@ theorem LinearEquiv.det_coe_symm {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] (f
#align linear_equiv.det_coe_symm LinearEquiv.det_coe_symm
/- warning: linear_equiv.of_is_unit_det -> LinearEquiv.ofIsUnitDet is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] [_inst_5 : Module.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] {ι : Type.{u4}} [_inst_6 : DecidableEq.{succ u4} ι] [_inst_7 : Fintype.{u4} ι] {f : LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5} {v : Basis.{u4, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3} {v' : Basis.{u4, u1, u3} ι R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5}, (IsUnit.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Matrix.det.{u1, u4} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (coeFn.{max (succ (max u2 u3)) (succ (max u4 u1)), max (succ (max u2 u3)) (succ (max u4 u1))} (LinearEquiv.{u1, u1, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_1.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_2.{u1} R _inst_1) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearEquiv.ofIsUnitDet._proof_3.{u1, u3} R _inst_1 M' _inst_4 _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (_x : LinearEquiv.{u1, u1, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_1.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_2.{u1} R _inst_1) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearEquiv.ofIsUnitDet._proof_3.{u1, u3} R _inst_1 M' _inst_4 _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) -> (Matrix.{u4, u4, u1} ι ι R)) (LinearEquiv.hasCoeToFun.{u1, u1, max u2 u3, max u4 u1} R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearEquiv.ofIsUnitDet._proof_3.{u1, u3} R _inst_1 M' _inst_4 _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_4.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_5.{u1} R _inst_1)) (LinearMap.toMatrix.{u1, u4, u4, u2, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 v v') f))) -> (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_6.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_7.{u1} R _inst_1) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5)
-but is expected to have type
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] [_inst_5 : Module.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] {ι : Type.{u4}} [_inst_6 : DecidableEq.{succ u4} ι] [_inst_7 : Fintype.{u4} ι] {f : LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5} {v : Basis.{u4, u1, u2} ι R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3} {v' : Basis.{u4, u1, u3} ι R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5}, (IsUnit.{u1} R (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.det.{u1, u4} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (FunLike.coe.{max (max (max (succ u1) (succ u2)) (succ u3)) (succ u4), max (succ u2) (succ u3), max (succ u1) (succ u4)} (LinearEquiv.{u1, u1, max u3 u2, max u1 u4} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (fun (_x : LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) => Matrix.{u4, u4, u1} ι ι R) _x) (SMulHomClass.toFunLike.{max (max (max u1 u2) u3) u4, u1, max u2 u3, max u1 u4} (LinearEquiv.{u1, u1, max u3 u2, max u1 u4} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (SMulZeroClass.toSMul.{u1, max u2 u3} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toZero.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u3} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u3} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u3} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))))))) (SMulZeroClass.toSMul.{u1, max u1 u4} R (Matrix.{u4, u4, u1} ι ι R) (AddMonoid.toZero.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u1, max u1 u4} R (Matrix.{u4, u4, u1} ι ι R) (AddMonoid.toAddZeroClass.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u1, max u1 u4} R (Matrix.{u4, u4, u1} ι ι R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (Module.toDistribMulAction.{u1, max u1 u4} R (Matrix.{u4, u4, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max (max u1 u2) u3) u4, u1, max u2 u3, max u1 u4} (LinearEquiv.{u1, u1, max u3 u2, max u1 u4} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (AddCommMonoid.toAddMonoid.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (Module.toDistribMulAction.{u1, max u2 u3} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5))))) (Module.toDistribMulAction.{u1, max u1 u4} R (Matrix.{u4, u4, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u3, max u1 u4, max (max (max u1 u2) u3) u4} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearEquiv.{u1, u1, max u3 u2, max u1 u4} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u3, max u1 u4, max (max (max u1 u2) u3) u4} R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearEquiv.{u1, u1, max u3 u2, max u1 u4} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u3, max u1 u4} R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (LinearMap.toMatrix.{u1, u4, u4, u2, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 v v') f))) -> (LinearEquiv.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5)
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_equiv.of_is_unit_det LinearEquiv.ofIsUnitDetₓ'. -/
/-- Builds a linear equivalence from a linear map whose determinant in some bases is a unit. -/
@[simps]
@@ -742,10 +634,7 @@ def LinearEquiv.ofIsUnitDet {f : M →ₗ[R] M'} {v : Basis ι R M} {v' : Basis
#align linear_equiv.of_is_unit_det LinearEquiv.ofIsUnitDet
/- warning: linear_equiv.coe_of_is_unit_det -> LinearEquiv.coe_ofIsUnitDet is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] [_inst_5 : Module.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] {ι : Type.{u4}} [_inst_6 : DecidableEq.{succ u4} ι] [_inst_7 : Fintype.{u4} ι] {f : LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5} {v : Basis.{u4, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3} {v' : Basis.{u4, u1, u3} ι R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5} (h : IsUnit.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Matrix.det.{u1, u4} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (coeFn.{max (succ (max u2 u3)) (succ (max u4 u1)), max (succ (max u2 u3)) (succ (max u4 u1))} (LinearEquiv.{u1, u1, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.toMatrix._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.toMatrix._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearMap.toMatrix._proof_3.{u1, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (_x : LinearEquiv.{u1, u1, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.toMatrix._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.toMatrix._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearMap.toMatrix._proof_3.{u1, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) -> (Matrix.{u4, u4, u1} ι ι R)) (LinearEquiv.hasCoeToFun.{u1, u1, max u2 u3, max u4 u1} R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearMap.toMatrix._proof_3.{u1, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.toMatrix._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.toMatrix._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.toMatrix.{u1, u4, u4, u2, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 v v') f))), Eq.{max (succ u2) (succ u3)} (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) ((fun (a : Sort.{max (succ u2) (succ u3)}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{max (succ u2) (succ u3), max (succ u2) (succ u3)} a b] => self.0) (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_6.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_7.{u1} R _inst_1) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (HasLiftT.mk.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_6.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_7.{u1} R _inst_1) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (CoeTCₓ.coe.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_6.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_7.{u1} R _inst_1) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (coeBase.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_6.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_7.{u1} R _inst_1) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearEquiv.LinearMap.hasCoe.{u1, u1, u2, u3} R R M M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_6.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_7.{u1} R _inst_1))))) (LinearEquiv.ofIsUnitDet.{u1, u2, u3, u4} R _inst_1 M _inst_2 _inst_3 M' _inst_4 _inst_5 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 f v v' h)) f
-but is expected to have type
- forall {R : Type.{u4}} [_inst_1 : CommRing.{u4} R] {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] [_inst_3 : Module.{u4, u3} R M (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] {M' : Type.{u2}} [_inst_4 : AddCommGroup.{u2} M'] [_inst_5 : Module.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] {f : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5} {v : Basis.{u1, u4, u3} ι R M (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3} {v' : Basis.{u1, u4, u2} ι R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5} (h : IsUnit.{u4} R (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (Matrix.det.{u4, u1} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (FunLike.coe.{max (max (max (succ u4) (succ u3)) (succ u2)) (succ u1), max (succ u3) (succ u2), max (succ u4) (succ u1)} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (fun (_x : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) => Matrix.{u1, u1, u4} ι ι R) _x) (SMulHomClass.toFunLike.{max (max (max u4 u3) u2) u1, u4, max u3 u2, max u4 u1} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (SMulZeroClass.toSMul.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toZero.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Module.toDistribMulAction.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))))))) (SMulZeroClass.toSMul.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (AddMonoid.toZero.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (AddMonoid.toAddZeroClass.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (Module.toDistribMulAction.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max (max u4 u3) u2) u1, u4, max u3 u2, max u4 u1} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (Module.toDistribMulAction.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5))))) (Module.toDistribMulAction.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (SemilinearMapClass.distribMulActionHomClass.{u4, max u3 u2, max u4 u1, max (max (max u4 u3) u2) u1} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (SemilinearEquivClass.instSemilinearMapClass.{u4, u4, max u3 u2, max u4 u1, max (max (max u4 u3) u2) u1} R R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u4, u4, max u3 u2, max u4 u1} R R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (LinearMap.toMatrix.{u4, u1, u1, u3, u2} R (CommRing.toCommSemiring.{u4} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 v v') f))), Eq.{max (succ u3) (succ u2)} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearEquiv.toLinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (LinearEquiv.ofIsUnitDet.{u4, u3, u2, u1} R _inst_1 M _inst_2 _inst_3 M' _inst_4 _inst_5 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 f v v' h)) f
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_equiv.coe_of_is_unit_det LinearEquiv.coe_ofIsUnitDetₓ'. -/
@[simp]
theorem LinearEquiv.coe_ofIsUnitDet {f : M →ₗ[R] M'} {v : Basis ι R M} {v' : Basis ι R M'}
@@ -756,10 +645,7 @@ theorem LinearEquiv.coe_ofIsUnitDet {f : M →ₗ[R] M'} {v : Basis ι R M} {v'
#align linear_equiv.coe_of_is_unit_det LinearEquiv.coe_ofIsUnitDet
/- warning: linear_map.equiv_of_det_ne_zero -> LinearMap.equivOfDetNeZero is a dubious translation:
-lean 3 declaration is
- forall {𝕜 : Type.{u1}} [_inst_8 : Field.{u1} 𝕜] {M : Type.{u2}} [_inst_9 : AddCommGroup.{u2} M] [_inst_10 : Module.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9)] [_inst_11 : FiniteDimensional.{u1, u2} 𝕜 M (Field.toDivisionRing.{u1} 𝕜 _inst_8) _inst_9 _inst_10] (f : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))) (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10), (Ne.{succ u1} 𝕜 (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) _inst_9 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) _inst_9 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) => (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) -> 𝕜) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) _inst_9 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) (LinearMap.det.{u2, u1} M _inst_9 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)) _inst_10) f) (OfNat.ofNat.{u1} 𝕜 0 (OfNat.mk.{u1} 𝕜 0 (Zero.zero.{u1} 𝕜 (MulZeroClass.toHasZero.{u1} 𝕜 (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} 𝕜 (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))))))))))) -> (LinearEquiv.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))) (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))))) (LinearMap.equivOfDetNeZero._proof_1.{u1} 𝕜 _inst_8) (LinearMap.equivOfDetNeZero._proof_2.{u1} 𝕜 _inst_8) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10)
-but is expected to have type
- forall {𝕜 : Type.{u1}} [_inst_8 : Field.{u1} 𝕜] {M : Type.{u2}} [_inst_9 : AddCommGroup.{u2} M] [_inst_10 : Module.{u1, u2} 𝕜 M (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9)] [_inst_11 : FiniteDimensional.{u1, u2} 𝕜 M (Field.toDivisionRing.{u1} 𝕜 _inst_8) _inst_9 _inst_10] (f : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10), (Ne.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.semiring.{u1, u2} 𝕜 M (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (fun (_x : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.semiring.{u1, u2} 𝕜 M (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.semiring.{u1, u2} 𝕜 M (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10))))) (MulOneClass.toMul.{u1} 𝕜 (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.semiring.{u1, u2} 𝕜 M (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.semiring.{u1, u2} 𝕜 M (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8))))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.semiring.{u1, u2} 𝕜 M (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))))) (LinearMap.det.{u2, u1} M _inst_9 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)) _inst_10) f) (OfNat.ofNat.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) 0 (Zero.toOfNat0.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) (CommMonoidWithZero.toZero.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) (CommGroupWithZero.toCommMonoidWithZero.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) (Semifield.toCommGroupWithZero.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) (Field.toSemifield.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) _inst_8))))))) -> (LinearEquiv.{u1, u1, u2, u2} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u1} 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u1} 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10)
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_map.equiv_of_det_ne_zero LinearMap.equivOfDetNeZeroₓ'. -/
/-- Builds a linear equivalence from a linear map on a finite-dimensional vector space whose
determinant is nonzero. -/
@@ -775,10 +661,7 @@ def LinearMap.equivOfDetNeZero {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCom
#align linear_map.equiv_of_det_ne_zero LinearMap.equivOfDetNeZero
/- warning: linear_map.associated_det_of_eq_comp -> LinearMap.associated_det_of_eq_comp is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (e : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (f : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (f' : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3), (forall (x : M), Eq.{succ u2} M (coeFn.{succ u2, succ u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => M -> M) (LinearMap.hasCoeToFun.{u1, u1, u2, u2} R R M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) f x) (coeFn.{succ u2, succ u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => M -> M) (LinearMap.hasCoeToFun.{u1, u1, u2, u2} R R M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) f' (coeFn.{succ u2, succ u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => M -> M) (LinearEquiv.hasCoeToFun.{u1, u1, u2, u2} R R M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) e x))) -> (Associated.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) f) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) f'))
-but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (e : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (f : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (f' : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3), (forall (x : M), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M) x) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f x) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f' (FunLike.coe.{succ u1, succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => M) _x) (SMulHomClass.toFunLike.{u1, u2, u1, u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R M M (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (Module.toDistribMulAction.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (Module.toDistribMulAction.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{u1, u2, u1, u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R M M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (Module.toDistribMulAction.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Module.toDistribMulAction.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, u1, u1} R M M (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, u1, u1} R R M M (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) e x))) -> (Associated.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (MonoidWithZero.toMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) _inst_1)))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) f'))
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_map.associated_det_of_eq_comp LinearMap.associated_det_of_eq_compₓ'. -/
theorem LinearMap.associated_det_of_eq_comp (e : M ≃ₗ[R] M) (f f' : M →ₗ[R] M)
(h : ∀ x, f x = f' (e x)) : Associated f.det f'.det :=
@@ -793,10 +676,7 @@ theorem LinearMap.associated_det_of_eq_comp (e : M ≃ₗ[R] M) (f f' : M →ₗ
#align linear_map.associated_det_of_eq_comp LinearMap.associated_det_of_eq_comp
/- warning: linear_map.associated_det_comp_equiv -> LinearMap.associated_det_comp_equiv is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {N : Type.{u3}} [_inst_8 : AddCommGroup.{u3} N] [_inst_9 : Module.{u1, u3} R N (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8)] (f : LinearMap.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_3) (e : LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (e' : LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9), Associated.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) (LinearMap.comp.{u1, u1, u1, u2, u3, u2} R R R M N M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomCompTriple.ids.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) f ((fun (a : Sort.{max (succ u2) (succ u3)}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{max (succ u2) (succ u3), max (succ u2) (succ u3)} a b] => self.0) (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (HasLiftT.mk.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (CoeTCₓ.coe.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (coeBase.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u1, u1, u2, u3} R R M N (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))))) e))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) (LinearMap.comp.{u1, u1, u1, u2, u3, u2} R R R M N M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomCompTriple.ids.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) f ((fun (a : Sort.{max (succ u2) (succ u3)}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{max (succ u2) (succ u3), max (succ u2) (succ u3)} a b] => self.0) (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (HasLiftT.mk.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (CoeTCₓ.coe.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (coeBase.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u1, u1, u2, u3} R R M N (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))))) e')))
-but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {N : Type.{u3}} [_inst_8 : AddCommGroup.{u3} N] [_inst_9 : Module.{u2, u3} R N (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8)] (f : LinearMap.{u2, u2, u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_3) (e : LinearEquiv.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (e' : LinearEquiv.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9), Associated.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) (MonoidWithZero.toMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) _inst_1)))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e')))
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_map.associated_det_comp_equiv LinearMap.associated_det_comp_equivₓ'. -/
theorem LinearMap.associated_det_comp_equiv {N : Type _} [AddCommGroup N] [Module R N]
(f : N →ₗ[R] M) (e e' : M ≃ₗ[R] N) : Associated (f ∘ₗ ↑e).det (f ∘ₗ ↑e').det :=
@@ -911,10 +791,7 @@ theorem Basis.isUnit_det (e' : Basis ι R M) : IsUnit (e.det e') :=
#align basis.is_unit_det Basis.isUnit_det
/- warning: alternating_map.eq_smul_basis_det -> AlternatingMap.eq_smul_basis_det is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (f : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι), Eq.{max (succ u2) (succ u1) (succ u3)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) f (SMul.smul.{u1, max u2 u1 u3} R (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (AlternatingMap.smul.{u1, u2, u1, u3, u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Module.toDistribMulAction.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (smulCommClass_self.{u1, u1} R R (CommRing.toCommMonoid.{u1} R _inst_1) (Monoid.toMulAction.{u1} R (CommMonoid.toMonoid.{u1} R (CommRing.toCommMonoid.{u1} R _inst_1))))) (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) f (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (fun (_x : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u1) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) e)) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e))
-but is expected to have type
- forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] (e : Basis.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (f : AlternatingMap.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι), Eq.{max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) f (HSMul.hSMul.{u3, max (max u3 u2) u1, max (max u3 u2) u1} R (AlternatingMap.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (AlternatingMap.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (instHSMul.{u3, max (max u3 u2) u1} R (AlternatingMap.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (AlternatingMap.smul.{u3, u2, u3, u1, u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u3, u3} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (smulCommClass_self.{u3, u3} R R (CommRing.toCommMonoid.{u3} R _inst_1) (MulActionWithZero.toMulAction.{u3, u3} R R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{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 u1), max (succ u2) (succ u1), succ u3} (AlternatingMap.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) e)) (Basis.det.{u3, u2, u1} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e))
+<too large>
Case conversion may be inaccurate. Consider using '#align alternating_map.eq_smul_basis_det AlternatingMap.eq_smul_basis_detₓ'. -/
/-- Any alternating map to `R` where `ι` has the cardinality of a basis equals the determinant
map with respect to that basis, multiplied by the value of that alternating map on that basis. -/
@@ -927,10 +804,7 @@ theorem AlternatingMap.eq_smul_basis_det (f : AlternatingMap R M R ι) : f = f e
#align alternating_map.eq_smul_basis_det AlternatingMap.eq_smul_basis_det
/- warning: alternating_map.map_basis_eq_zero_iff -> AlternatingMap.map_basis_eq_zero_iff is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_8 : Finite.{succ u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (f : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι), Iff (Eq.{succ u1} R (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) f (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (fun (_x : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u1) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) e)) (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 (CommRing.toRing.{u1} R _inst_1)))))))))) (Eq.{max (succ u2) (succ u1) (succ u3)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) f (OfNat.ofNat.{max u2 u1 u3} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) 0 (OfNat.mk.{max u2 u1 u3} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) 0 (Zero.zero.{max u2 u1 u3} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (AlternatingMap.zero.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι)))))
-but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_8 : Finite.{succ u3} ι] (e : Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (f : AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι), Iff (Eq.{succ u2} R (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) f (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) e)) (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Eq.{max (max (succ u2) (succ u1)) (succ u3)} (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) f (OfNat.ofNat.{max (max u2 u1) u3} (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) 0 (Zero.toOfNat0.{max (max u2 u1) u3} (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (AlternatingMap.zero.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι))))
+<too large>
Case conversion may be inaccurate. Consider using '#align alternating_map.map_basis_eq_zero_iff AlternatingMap.map_basis_eq_zero_iffₓ'. -/
@[simp]
theorem AlternatingMap.map_basis_eq_zero_iff {ι : Type _} [Finite ι] (e : Basis ι R M)
@@ -942,10 +816,7 @@ theorem AlternatingMap.map_basis_eq_zero_iff {ι : Type _} [Finite ι] (e : Basi
#align alternating_map.map_basis_eq_zero_iff AlternatingMap.map_basis_eq_zero_iff
/- warning: alternating_map.map_basis_ne_zero_iff -> AlternatingMap.map_basis_ne_zero_iff is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_8 : Finite.{succ u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (f : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι), Iff (Ne.{succ u1} R (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) f (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (fun (_x : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u1) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) e)) (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 (CommRing.toRing.{u1} R _inst_1)))))))))) (Ne.{max (succ u2) (succ u1) (succ u3)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) f (OfNat.ofNat.{max u2 u1 u3} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) 0 (OfNat.mk.{max u2 u1 u3} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) 0 (Zero.zero.{max u2 u1 u3} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (AlternatingMap.zero.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι)))))
-but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_8 : Finite.{succ u3} ι] (e : Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (f : AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι), Iff (Ne.{succ u2} R (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) f (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) e)) (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Ne.{max (max (succ u2) (succ u1)) (succ u3)} (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) f (OfNat.ofNat.{max (max u2 u1) u3} (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) 0 (Zero.toOfNat0.{max (max u2 u1) u3} (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (AlternatingMap.zero.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι))))
+<too large>
Case conversion may be inaccurate. Consider using '#align alternating_map.map_basis_ne_zero_iff AlternatingMap.map_basis_ne_zero_iffₓ'. -/
theorem AlternatingMap.map_basis_ne_zero_iff {ι : Type _} [Finite ι] (e : Basis ι R M)
(f : AlternatingMap R M R ι) : f e ≠ 0 ↔ f ≠ 0 :=
@@ -955,10 +826,7 @@ theorem AlternatingMap.map_basis_ne_zero_iff {ι : Type _} [Finite ι] (e : Basi
variable {A : Type _} [CommRing A] [Module A M]
/- warning: basis.det_comp -> Basis.det_comp is a dubious translation:
-lean 3 declaration is
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u3}} [_inst_8 : CommRing.{u3} A] [_inst_9 : Module.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (e : Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (v : ι -> M), Eq.{succ u3} A (coeFn.{max (succ u1) (succ u3) (succ u2), max (max (succ u2) (succ u1)) (succ u3)} (AlternatingMap.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) (fun (_x : AlternatingMap.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) => (ι -> M) -> A) (AlternatingMap.coeFun.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) (Basis.det.{u3, u1, u2} A _inst_8 M _inst_2 _inst_9 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (Function.comp.{succ u2, succ u1, succ u1} ι M M (coeFn.{succ u1, succ u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => M -> M) (LinearMap.hasCoeToFun.{u3, u3, u1, u1} A A M M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))))) f) v)) (HMul.hMul.{u3, u3, u3} A A A (instHMul.{u3} A (Distrib.toHasMul.{u3} A (Ring.toDistrib.{u3} A (CommRing.toRing.{u3} A _inst_8)))) (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.det.{u1, u3} M _inst_2 A _inst_8 _inst_9) f) (coeFn.{max (succ u1) (succ u3) (succ u2), max (max (succ u2) (succ u1)) (succ u3)} (AlternatingMap.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) (fun (_x : AlternatingMap.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) => (ι -> M) -> A) (AlternatingMap.coeFun.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) (Basis.det.{u3, u1, u2} A _inst_8 M _inst_2 _inst_9 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v))
-but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (e : Basis.{u3, u2, u1} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (v : ι -> M), Eq.{succ u2} A (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) ι) (ι -> M) (fun (_x : ι -> M) => A) (AlternatingMap.funLike.{u2, u1, u2, u3} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) ι) (Basis.det.{u2, u1, u3} A _inst_8 M _inst_2 _inst_9 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (Function.comp.{succ u3, succ u1, succ u1} ι M M (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) f) v)) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) A ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (NonUnitalNonAssocRing.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (NonAssocRing.toNonUnitalNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) _inst_8))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) ι) (ι -> M) (fun (_x : ι -> M) => A) (AlternatingMap.funLike.{u2, u1, u2, u3} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) ι) (Basis.det.{u2, u1, u3} A _inst_8 M _inst_2 _inst_9 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v))
+<too large>
Case conversion may be inaccurate. Consider using '#align basis.det_comp Basis.det_compₓ'. -/
@[simp]
theorem Basis.det_comp (e : Basis ι A M) (f : M →ₗ[A] M) (v : ι → M) :
@@ -969,10 +837,7 @@ theorem Basis.det_comp (e : Basis ι A M) (f : M →ₗ[A] M) (v : ι → M) :
#align basis.det_comp Basis.det_comp
/- warning: basis.det_comp_basis -> Basis.det_comp_basis is a dubious translation:
-lean 3 declaration is
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {M' : Type.{u2}} [_inst_4 : AddCommGroup.{u2} M'] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u4}} [_inst_8 : CommRing.{u4} A] [_inst_9 : Module.{u4, u1} A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_10 : Module.{u4, u2} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4)] (b : Basis.{u3, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (b' : Basis.{u3, u4, u2} ι A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10) (f : LinearMap.{u4, u4, u1, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_9 _inst_10), Eq.{succ u4} A (coeFn.{max (succ u2) (succ u4) (succ u3), max (max (succ u3) (succ u2)) (succ u4)} (AlternatingMap.{u4, u2, u4, u3} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 A (AddCommGroup.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toAddCommGroup.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) ι) (fun (_x : AlternatingMap.{u4, u2, u4, u3} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 A (AddCommGroup.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toAddCommGroup.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) ι) => (ι -> M') -> A) (AlternatingMap.coeFun.{u4, u2, u4, u3} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 A (AddCommGroup.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toAddCommGroup.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) ι) (Basis.det.{u4, u2, u3} A _inst_8 M' _inst_4 _inst_10 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b') (Function.comp.{succ u3, succ u1, succ u2} ι M M' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (LinearMap.{u4, u4, u1, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_9 _inst_10) (fun (_x : LinearMap.{u4, u4, u1, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_9 _inst_10) => M -> M') (LinearMap.hasCoeToFun.{u4, u4, u1, u2} A A M M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_9 _inst_10 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))))) f) (coeFn.{max (succ u3) (succ u4) (succ u1), max (succ u3) (succ u1)} (Basis.{u3, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (fun (_x : Basis.{u3, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u4) (succ u1), succ u3, succ u1} (Basis.{u3, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) b))) (coeFn.{max (succ u4) (succ u2), max (succ u2) (succ u4)} (MonoidHom.{u2, u4} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Module.End.ring.{u4, u2} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) _inst_4 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))))) (fun (_x : MonoidHom.{u2, u4} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Module.End.ring.{u4, u2} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) _inst_4 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))))) => (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) -> A) (MonoidHom.hasCoeToFun.{u2, u4} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Module.End.ring.{u4, u2} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) _inst_4 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))))) (LinearMap.det.{u2, u4} M' _inst_4 A _inst_8 _inst_10) (LinearMap.comp.{u4, u4, u4, u2, u1, u2} A A A M' M M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_9 _inst_10 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomCompTriple.ids.{u4, u4} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))))) f ((fun (a : Sort.{max (succ u2) (succ u1)}) (b : Sort.{max (succ u2) (succ u1)}) [self : HasLiftT.{max (succ u2) (succ u1), max (succ u2) (succ u1)} a b] => self.0) (LinearEquiv.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (LinearMap.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (HasLiftT.mk.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (LinearMap.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (CoeTCₓ.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (LinearMap.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (coeBase.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (LinearMap.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u4, u4, u2, u1} A A M' M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))))))) (Basis.equiv.{u3, u3, u4, u2, u1} ι ι A M' M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 b' b (Equiv.refl.{succ u3} ι)))))
-but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u4}} [_inst_8 : CommRing.{u4} A] [_inst_9 : Module.{u4, u1} A M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_10 : Module.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] (b : Basis.{u2, u4, u1} ι A M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (b' : Basis.{u2, u4, u3} ι A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10) (f : LinearMap.{u4, u4, u1, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_9 _inst_10), Eq.{succ u4} A (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u2), max (succ u3) (succ u2), succ u4} (AlternatingMap.{u4, u3, u4, u2} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))) ι) (ι -> M') (fun (_x : ι -> M') => A) (AlternatingMap.funLike.{u4, u3, u4, u2} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))) ι) (Basis.det.{u4, u3, u2} A _inst_8 M' _inst_4 _inst_10 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b') (Function.comp.{succ u2, succ u1, succ u3} ι M M' (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (LinearMap.{u4, u4, u1, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_9 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u4, u4, u1, u3} A A M M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_9 _inst_10 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))))) f) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), succ u2, succ u1} (Basis.{u2, u4, u1} ι A M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u4, u1} ι A M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) b))) (FunLike.coe.{max (succ u4) (succ u3), succ u3, succ u4} (MonoidHom.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))) (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (fun (_x : LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) => A) _x) (MulHomClass.toFunLike.{max u4 u3, u3, u4} (MonoidHom.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))) (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulOneClass.toMul.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10))))) (MulOneClass.toMul.{u4} A (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u4 u3, u3, u4} (MonoidHom.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))) (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))))) (LinearMap.det.{u3, u4} M' _inst_4 A _inst_8 _inst_10) (LinearMap.comp.{u4, u4, u4, u3, u1, u3} A A A M' M M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_9 _inst_10 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHomCompTriple.ids.{u4, u4} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))))) f (LinearEquiv.toLinearMap.{u4, u4, u3, u1} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9 (Basis.equiv.{u2, u2, u4, u3, u1} ι ι A M' M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 b' b (Equiv.refl.{succ u2} ι)))))
+<too large>
Case conversion may be inaccurate. Consider using '#align basis.det_comp_basis Basis.det_comp_basisₓ'. -/
@[simp]
theorem Basis.det_comp_basis [Module A M'] (b : Basis ι A M) (b' : Basis ι A M') (f : M →ₗ[A] M') :
@@ -985,10 +850,7 @@ theorem Basis.det_comp_basis [Module A M'] (b : Basis ι A M) (b' : Basis ι A M
#align basis.det_comp_basis Basis.det_comp_basis
/- warning: basis.det_reindex -> Basis.det_reindex is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {ι' : Type.{u4}} [_inst_10 : Fintype.{u4} ι'] [_inst_11 : DecidableEq.{succ u4} ι'] (b : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (v : ι' -> M) (e : Equiv.{succ u3, succ u4} ι ι'), Eq.{succ u1} R (coeFn.{max (succ u2) (succ u1) (succ u4), max (max (succ u4) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι') (fun (_x : AlternatingMap.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι') => (ι' -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι') (Basis.det.{u1, u2, u4} R _inst_1 M _inst_2 _inst_3 ι' (fun (a : ι') (b : ι') => _inst_11 a b) _inst_10 (Basis.reindex.{u3, u4, u1, u2} ι ι' R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 b e)) v) (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) (Function.comp.{succ u3, succ u4, succ u2} ι ι' M v (coeFn.{max 1 (max (succ u3) (succ u4)) (succ u4) (succ u3), max (succ u3) (succ u4)} (Equiv.{succ u3, succ u4} ι ι') (fun (_x : Equiv.{succ u3, succ u4} ι ι') => ι -> ι') (Equiv.hasCoeToFun.{succ u3, succ u4} ι ι') e)))
-but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {ι' : Type.{u4}} [_inst_10 : Fintype.{u4} ι'] [_inst_11 : DecidableEq.{succ u4} ι'] (b : Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (v : ι' -> M) (e : Equiv.{succ u3, succ u4} ι ι'), Eq.{succ u2} R (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), max (succ u1) (succ u4), succ u2} (AlternatingMap.{u2, u1, u2, u4} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι') (ι' -> M) (fun (_x : ι' -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u4} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι') (Basis.det.{u2, u1, u4} R _inst_1 M _inst_2 _inst_3 ι' (fun (a : ι') (b : ι') => _inst_11 a b) _inst_10 (Basis.reindex.{u3, u4, u2, u1} ι ι' R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 b e)) v) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) (Function.comp.{succ u3, succ u4, succ u1} ι ι' M v (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} (Equiv.{succ u3, succ u4} ι ι') ι (fun (_x : ι) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : ι) => ι') _x) (Equiv.instFunLikeEquiv.{succ u3, succ u4} ι ι') e)))
+<too large>
Case conversion may be inaccurate. Consider using '#align basis.det_reindex Basis.det_reindexₓ'. -/
theorem Basis.det_reindex {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (b : Basis ι R M) (v : ι' → M)
(e : ι ≃ ι') : (b.reindex e).det v = b.det (v ∘ e) := by
@@ -996,10 +858,7 @@ theorem Basis.det_reindex {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (b : Ba
#align basis.det_reindex Basis.det_reindex
/- warning: basis.det_reindex_symm -> Basis.det_reindex_symm is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {ι' : Type.{u4}} [_inst_10 : Fintype.{u4} ι'] [_inst_11 : DecidableEq.{succ u4} ι'] (b : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (v : ι -> M) (e : Equiv.{succ u4, succ u3} ι' ι), Eq.{succ u1} R (coeFn.{max (succ u2) (succ u1) (succ u4), max (max (succ u4) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι') (fun (_x : AlternatingMap.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι') => (ι' -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι') (Basis.det.{u1, u2, u4} R _inst_1 M _inst_2 _inst_3 ι' (fun (a : ι') (b : ι') => _inst_11 a b) _inst_10 (Basis.reindex.{u3, u4, u1, u2} ι ι' R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 b (Equiv.symm.{succ u4, succ u3} ι' ι e))) (Function.comp.{succ u4, succ u3, succ u2} ι' ι M v (coeFn.{max 1 (max (succ u4) (succ u3)) (succ u3) (succ u4), max (succ u4) (succ u3)} (Equiv.{succ u4, succ u3} ι' ι) (fun (_x : Equiv.{succ u4, succ u3} ι' ι) => ι' -> ι) (Equiv.hasCoeToFun.{succ u4, succ u3} ι' ι) e))) (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) v)
-but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {ι' : Type.{u4}} [_inst_10 : Fintype.{u4} ι'] [_inst_11 : DecidableEq.{succ u4} ι'] (b : Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (v : ι -> M) (e : Equiv.{succ u4, succ u3} ι' ι), Eq.{succ u2} R (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), max (succ u1) (succ u4), succ u2} (AlternatingMap.{u2, u1, u2, u4} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι') (ι' -> M) (fun (_x : ι' -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u4} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι') (Basis.det.{u2, u1, u4} R _inst_1 M _inst_2 _inst_3 ι' (fun (a : ι') (b : ι') => _inst_11 a b) _inst_10 (Basis.reindex.{u3, u4, u2, u1} ι ι' R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 b (Equiv.symm.{succ u4, succ u3} ι' ι e))) (Function.comp.{succ u4, succ u3, succ u1} ι' ι M v (FunLike.coe.{max (succ u3) (succ u4), succ u4, succ u3} (Equiv.{succ u4, succ u3} ι' ι) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : ι') => ι) _x) (Equiv.instFunLikeEquiv.{succ u4, succ u3} ι' ι) e))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) v)
+<too large>
Case conversion may be inaccurate. Consider using '#align basis.det_reindex_symm Basis.det_reindex_symmₓ'. -/
theorem Basis.det_reindex_symm {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (b : Basis ι R M)
(v : ι → M) (e : ι' ≃ ι) : (b.reindex e.symm).det (v ∘ e) = b.det v := by
@@ -1007,10 +866,7 @@ theorem Basis.det_reindex_symm {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (b
#align basis.det_reindex_symm Basis.det_reindex_symm
/- warning: basis.det_map -> Basis.det_map is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] [_inst_5 : Module.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] {ι : Type.{u4}} [_inst_6 : DecidableEq.{succ u4} ι] [_inst_7 : Fintype.{u4} ι] (b : Basis.{u4, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (f : LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (v : ι -> M'), Eq.{succ u1} R (coeFn.{max (succ u3) (succ u1) (succ u4), max (max (succ u4) (succ u3)) (succ u1)} (AlternatingMap.{u1, u3, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u3, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M') -> R) (AlternatingMap.coeFun.{u1, u3, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u3, u4} R _inst_1 M' _inst_4 _inst_5 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 (Basis.map.{u4, u1, u2, u3} ι R M M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 b f)) v) (coeFn.{max (succ u2) (succ u1) (succ u4), max (max (succ u4) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u4} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) (Function.comp.{succ u4, succ u3, succ u2} ι M' M (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearEquiv.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (fun (_x : LinearEquiv.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) => M' -> M) (LinearEquiv.hasCoeToFun.{u1, u1, u3, u2} R R M' M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.symm.{u1, u1, u2, u3} R R M M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) f)) v))
-but is expected to have type
- forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u1}} [_inst_4 : AddCommGroup.{u1} M'] [_inst_5 : Module.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4)] {ι : Type.{u4}} [_inst_6 : DecidableEq.{succ u4} ι] [_inst_7 : Fintype.{u4} ι] (b : Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (f : LinearEquiv.{u3, u3, u2, u1} 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))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5) (v : ι -> M'), Eq.{succ u3} R (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u4), max (succ u1) (succ u4), succ u3} (AlternatingMap.{u3, u1, u3, u4} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (ι -> M') (fun (_x : ι -> M') => R) (AlternatingMap.funLike.{u3, u1, u3, u4} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (Basis.det.{u3, u1, u4} R _inst_1 M' _inst_4 _inst_5 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 (Basis.map.{u4, u3, u2, u1} ι R M M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 b f)) v) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u4), succ u3} (AlternatingMap.{u3, u2, u3, u4} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u3, u2, u3, u4} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (Basis.det.{u3, u2, u4} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) (Function.comp.{succ u4, succ u1, succ u2} ι M' M (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearEquiv.{u3, u3, u1, 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))) M' M (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _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 u1, u3, u1, u2} (LinearEquiv.{u3, u3, u1, 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))) M' M (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) R M' M (SMulZeroClass.toSMul.{u3, u1} R M' (AddMonoid.toZero.{u1} M' (AddCommMonoid.toAddMonoid.{u1} M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4))) (DistribSMul.toSMulZeroClass.{u3, u1} R M' (AddMonoid.toAddZeroClass.{u1} M' (AddCommMonoid.toAddMonoid.{u1} M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4))) (DistribMulAction.toDistribSMul.{u3, u1} R M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4)) (Module.toDistribMulAction.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u3, u1, u2} (LinearEquiv.{u3, u3, u1, 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))) M' M (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) R M' M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4)) (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Module.toDistribMulAction.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, u1, u2, max u2 u1} R M' M (LinearEquiv.{u3, u3, u1, 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))) M' M (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u1, u2, max u2 u1} R R M' M (LinearEquiv.{u3, u3, u1, 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))) M' M (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 (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, u1, u2} R R M' M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 (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.symm.{u3, u3, u2, u1} R R M M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5 (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))) f)) v))
+<too large>
Case conversion may be inaccurate. Consider using '#align basis.det_map Basis.det_mapₓ'. -/
@[simp]
theorem Basis.det_map (b : Basis ι R M) (f : M ≃ₗ[R] M') (v : ι → M') :
@@ -1019,10 +875,7 @@ theorem Basis.det_map (b : Basis ι R M) (f : M ≃ₗ[R] M') (v : ι → M') :
#align basis.det_map Basis.det_map
/- warning: basis.det_map' -> Basis.det_map' is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] [_inst_5 : Module.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] {ι : Type.{u4}} [_inst_6 : DecidableEq.{succ u4} ι] [_inst_7 : Fintype.{u4} ι] (b : Basis.{u4, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (f : LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5), Eq.{max (succ u3) (succ u1) (succ u4)} (AlternatingMap.{u1, u3, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u3, u4} R _inst_1 M' _inst_4 _inst_5 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 (Basis.map.{u4, u1, u2, u3} ι R M M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 b f)) (AlternatingMap.compLinearMap.{u1, u2, u1, u4, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 (Basis.det.{u1, u2, u4} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) ((fun (a : Sort.{max (succ u3) (succ u2)}) (b : Sort.{max (succ u3) (succ u2)}) [self : HasLiftT.{max (succ u3) (succ u2), max (succ u3) (succ u2)} a b] => self.0) (LinearEquiv.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (LinearMap.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (HasLiftT.mk.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearEquiv.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (LinearMap.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (CoeTCₓ.coe.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearEquiv.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (LinearMap.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (coeBase.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearEquiv.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (LinearMap.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (LinearEquiv.LinearMap.hasCoe.{u1, u1, u3, u2} R R M' M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))))) (LinearEquiv.symm.{u1, u1, u2, u3} R R M M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) f)))
-but is expected to have type
- forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u1}} [_inst_4 : AddCommGroup.{u1} M'] [_inst_5 : Module.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4)] {ι : Type.{u4}} [_inst_6 : DecidableEq.{succ u4} ι] [_inst_7 : Fintype.{u4} ι] (b : Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (f : LinearEquiv.{u3, u3, u2, u1} 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))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5), Eq.{max (max (succ u3) (succ u1)) (succ u4)} (AlternatingMap.{u3, u1, u3, u4} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (Basis.det.{u3, u1, u4} R _inst_1 M' _inst_4 _inst_5 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 (Basis.map.{u4, u3, u2, u1} ι R M M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 b f)) (AlternatingMap.compLinearMap.{u3, u2, u3, u4, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 (Basis.det.{u3, u2, u4} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) (LinearEquiv.toLinearMap.{u3, u3, u1, 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))) M' M (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 (LinearEquiv.symm.{u3, u3, u2, u1} R R M M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5 (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))) f)))
+<too large>
Case conversion may be inaccurate. Consider using '#align basis.det_map' Basis.det_map'ₓ'. -/
theorem Basis.det_map' (b : Basis ι R M) (f : M ≃ₗ[R] M') :
(b.map f).det = b.det.compLinearMap f.symm :=
@@ -1043,10 +896,7 @@ theorem Pi.basisFun_det : (Pi.basisFun R ι).det = Matrix.detRowAlternating :=
#align pi.basis_fun_det Pi.basisFun_det
/- warning: basis.det_smul_mk_coord_eq_det_update -> Basis.det_smul_mk_coord_eq_det_update is a dubious translation:
-lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) {v : ι -> M} (hli : LinearIndependent.{u3, u1, u2} ι R M v (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (hsp : LE.le.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (Preorder.toHasLe.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (CompleteSemilatticeInf.toPartialOrder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (Submodule.completeLattice.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3))))) (Top.top.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (Submodule.hasTop.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) (Submodule.span.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 (Set.range.{u2, succ u3} M ι v))) (i : ι), Eq.{succ (max u2 u1)} (LinearMap.{u1, u1, u2, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M R (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) _inst_3 (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (SMul.smul.{u1, max u2 u1} R (LinearMap.{u1, u1, u2, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M R (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) _inst_3 (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearMap.hasSmul.{u1, u1, u1, u2, u1} R R R M R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) _inst_3 (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Module.toDistribMulAction.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (smulCommClass_self.{u1, u1} R R (CommRing.toCommMonoid.{u1} R _inst_1) (Monoid.toMulAction.{u1} R (CommMonoid.toMonoid.{u1} R (CommRing.toCommMonoid.{u1} R _inst_1))))) (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v) (Basis.coord.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 (Basis.mk.{u3, u1, u2} ι R M v (CommRing.toRing.{u1} R _inst_1) _inst_2 _inst_3 hli hsp) i)) (MultilinearMap.toLinearMap.{u1, u2, u1, u3} R ι (fun (i : ι) => M) R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (fun (i : ι) => _inst_3) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (AlternatingMap.toMultilinearMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e)) (fun (a : ι) (b : ι) => _inst_6 a b) v i)
-but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) {v : ι -> M} (hli : LinearIndependent.{u3, u2, u1} ι R M v (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (hsp : LE.le.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Submodule.completeLattice.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (Top.top.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Submodule.instTopSubmodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (Submodule.span.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 (Set.range.{u1, succ u3} M ι v))) (i : ι), Eq.{max (succ u2) (succ u1)} (LinearMap.{u2, u2, 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)))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _inst_3 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (HSMul.hSMul.{u2, max u2 u1, max u2 u1} R (LinearMap.{u2, u2, 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)))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _inst_3 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (LinearMap.{u2, u2, 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)))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _inst_3 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (instHSMul.{u2, max u2 u1} R (LinearMap.{u2, u2, 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)))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _inst_3 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (LinearMap.instSMulLinearMap.{u2, u2, u2, u1, u2} R R R M R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _inst_3 (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)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (Module.toDistribMulAction.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (smulCommClass_self.{u2, u2} R R (CommRing.toCommMonoid.{u2} R _inst_1) (MulActionWithZero.toMulAction.{u2, u2} R R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v) (Basis.coord.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 (Basis.mk.{u3, u2, u1} ι R M v (CommRing.toRing.{u2} R _inst_1) _inst_2 _inst_3 hli hsp) i)) (MultilinearMap.toLinearMap.{u2, u1, u2, u3} R ι (fun (i : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (fun (i : ι) => _inst_3) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AlternatingMap.toMultilinearMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e)) (fun (a : ι) (b : ι) => _inst_6 a b) v i)
+<too large>
Case conversion may be inaccurate. Consider using '#align basis.det_smul_mk_coord_eq_det_update Basis.det_smul_mk_coord_eq_det_updateₓ'. -/
/-- If we fix a background basis `e`, then for any other basis `v`, we can characterise the
coordinates provided by `v` in terms of determinants relative to `e`. -/
mathlib commit https://github.com/leanprover-community/mathlib/commit/8d33f09cd7089ecf074b4791907588245aec5d1b
@@ -163,7 +163,7 @@ variable {κ : Type _} [Fintype κ]
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u3}} [_inst_8 : CommRing.{u3} A] [_inst_9 : Module.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {κ : Type.{u4}} [_inst_10 : Fintype.{u4} κ] [_inst_11 : DecidableEq.{succ u4} κ] (b : Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (c : Basis.{u4, u3, u1} κ A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u3} A (Matrix.det.{u3, u2} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (coeFn.{max (succ u1) (succ (max u2 u3)), max (succ u1) (succ (max u2 u3))} (LinearEquiv.{u3, u3, u1, max u2 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (fun (_x : LinearEquiv.{u3, u3, u1, max u2 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) => (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> (Matrix.{u2, u2, u3} ι ι A)) (LinearEquiv.hasCoeToFun.{u3, u3, u1, max u2 u3} A A (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))) (LinearMap.toMatrix.{u3, u2, u2, u1, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f)) (Matrix.det.{u3, u4} κ (fun (a : κ) (b : κ) => _inst_11 a b) _inst_10 A _inst_8 (coeFn.{max (succ u1) (succ (max u4 u3)), max (succ u1) (succ (max u4 u3))} (LinearEquiv.{u3, u3, u1, max u4 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u3} κ κ A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u4, u4, u3} κ κ A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (fun (_x : LinearEquiv.{u3, u3, u1, max u4 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u3} κ κ A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u4, u4, u3} κ κ A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) => (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> (Matrix.{u4, u4, u3} κ κ A)) (LinearEquiv.hasCoeToFun.{u3, u3, u1, max u4 u3} A A (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u3} κ κ A) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u4, u4, u3} κ κ A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))) (LinearMap.toMatrix.{u3, u4, u4, u1, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) κ κ _inst_10 _inst_10 (fun (a : κ) (b : κ) => _inst_11 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 c c) f))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {κ : Type.{u4}} [_inst_10 : Fintype.{u4} κ] [_inst_11 : DecidableEq.{succ u4} κ] (b : Basis.{u3, u2, u1} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (c : Basis.{u4, u2, u1} κ A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} A (Matrix.det.{u2, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => Matrix.{u3, u3, u2} ι ι A) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (SMulZeroClass.toSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toZero.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toAddZeroClass.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u1 u3) u2} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u1 u3) u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u3, u3, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f)) (Matrix.det.{u2, u4} κ (fun (a : κ) (b : κ) => _inst_11 a b) _inst_10 A _inst_8 (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), succ u1, max (succ u2) (succ u4)} (LinearEquiv.{u2, u2, u1, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => Matrix.{u4, u4, u2} κ κ A) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u4, u2, u1, max u2 u4} (LinearEquiv.{u2, u2, u1, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (SMulZeroClass.toSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u2 u4} A (Matrix.{u4, u4, u2} κ κ A) (AddMonoid.toZero.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u4} A (Matrix.{u4, u4, u2} κ κ A) (AddMonoid.toAddZeroClass.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u2 u4} A (Matrix.{u4, u4, u2} κ κ A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u2 u4} A (Matrix.{u4, u4, u2} κ κ A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u4, u2, u1, max u2 u4} (LinearEquiv.{u2, u2, u1, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u2 u4} A (Matrix.{u4, u4, u2} κ κ A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u2 u4, max (max u1 u2) u4} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearEquiv.{u2, u2, u1, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u2 u4, max (max u1 u2) u4} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearEquiv.{u2, u2, u1, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u2 u4} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u4, u4, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) κ κ _inst_10 _inst_10 (fun (a : κ) (b : κ) => _inst_11 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 c c) f))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {κ : Type.{u4}} [_inst_10 : Fintype.{u4} κ] [_inst_11 : DecidableEq.{succ u4} κ] (b : Basis.{u3, u2, u1} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (c : Basis.{u4, u2, u1} κ A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} A (Matrix.det.{u2, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => Matrix.{u3, u3, u2} ι ι A) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (SMulZeroClass.toSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toZero.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toAddZeroClass.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u1 u3) u2} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u1 u3) u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u3, u3, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f)) (Matrix.det.{u2, u4} κ (fun (a : κ) (b : κ) => _inst_11 a b) _inst_10 A _inst_8 (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), succ u1, max (succ u2) (succ u4)} (LinearEquiv.{u2, u2, u1, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => Matrix.{u4, u4, u2} κ κ A) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u4, u2, u1, max u2 u4} (LinearEquiv.{u2, u2, u1, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (SMulZeroClass.toSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u2 u4} A (Matrix.{u4, u4, u2} κ κ A) (AddMonoid.toZero.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u4} A (Matrix.{u4, u4, u2} κ κ A) (AddMonoid.toAddZeroClass.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u2 u4} A (Matrix.{u4, u4, u2} κ κ A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u2 u4} A (Matrix.{u4, u4, u2} κ κ A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u4, u2, u1, max u2 u4} (LinearEquiv.{u2, u2, u1, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u2 u4} A (Matrix.{u4, u4, u2} κ κ A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u2 u4, max (max u1 u2) u4} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearEquiv.{u2, u2, u1, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u2 u4, max (max u1 u2) u4} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearEquiv.{u2, u2, u1, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u2 u4} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u4, u4, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) κ κ _inst_10 _inst_10 (fun (a : κ) (b : κ) => _inst_11 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 c c) f))
Case conversion may be inaccurate. Consider using '#align linear_map.det_to_matrix_eq_det_to_matrix LinearMap.det_toMatrix_eq_det_toMatrixₓ'. -/
/-- The determinant of `linear_map.to_matrix` does not depend on the choice of basis. -/
theorem det_toMatrix_eq_det_toMatrix [DecidableEq κ] (b : Basis ι A M) (c : Basis κ A M)
@@ -194,7 +194,7 @@ irreducible_def detAux : Trunc (Basis ι A M) → (M →ₗ[A] M) →* A :=
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u3}} [_inst_8 : CommRing.{u3} A] [_inst_9 : Module.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u3} A (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.detAux.{u1, u2, u3} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 (Trunc.mk.{max (succ u2) (succ u3) (succ u1)} (Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) b)) f) (Matrix.det.{u3, u2} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (coeFn.{max (succ u1) (succ (max u2 u3)), max (succ u1) (succ (max u2 u3))} (LinearEquiv.{u3, u3, u1, max u2 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (fun (_x : LinearEquiv.{u3, u3, u1, max u2 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) => (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> (Matrix.{u2, u2, u3} ι ι A)) (LinearEquiv.hasCoeToFun.{u3, u3, u1, max u2 u3} A A (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))) (LinearMap.toMatrix.{u3, u2, u2, u1, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : Basis.{u3, u2, u1} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.detAux.{u1, u3, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 (Trunc.mk.{max (max (succ u2) (succ u3)) (succ u1)} (Basis.{u3, u2, u1} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) b)) f) (Matrix.det.{u2, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => Matrix.{u3, u3, u2} ι ι A) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (SMulZeroClass.toSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toZero.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toAddZeroClass.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u1 u3) u2} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u1 u3) u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u3, u3, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : Basis.{u3, u2, u1} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.detAux.{u1, u3, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 (Trunc.mk.{max (max (succ u2) (succ u3)) (succ u1)} (Basis.{u3, u2, u1} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) b)) f) (Matrix.det.{u2, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => Matrix.{u3, u3, u2} ι ι A) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (SMulZeroClass.toSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toZero.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toAddZeroClass.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u1 u3) u2} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u1 u3) u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u3, u3, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f))
Case conversion may be inaccurate. Consider using '#align linear_map.det_aux_def LinearMap.detAux_def'ₓ'. -/
/-- Unfold lemma for `det_aux`.
@@ -211,7 +211,7 @@ theorem detAux_def' (b : Basis ι A M) (f : M →ₗ[A] M) :
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u3}} [_inst_8 : CommRing.{u3} A] [_inst_9 : Module.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι' : Type.{u4}} [_inst_11 : Fintype.{u4} ι'] [_inst_12 : DecidableEq.{succ u4} ι'] (tb : Trunc.{max (succ u2) (succ u3) (succ u1)} (Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (b' : Basis.{u4, u3, u1} ι' A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u3} A (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.detAux.{u1, u2, u3} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 tb) f) (Matrix.det.{u3, u4} ι' (fun (a : ι') (b : ι') => _inst_12 a b) _inst_11 A _inst_8 (coeFn.{max (succ u1) (succ (max u4 u3)), max (succ u1) (succ (max u4 u3))} (LinearEquiv.{u3, u3, u1, max u4 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u3} ι' ι' A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u4, u4, u3} ι' ι' A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (fun (_x : LinearEquiv.{u3, u3, u1, max u4 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u3} ι' ι' A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u4, u4, u3} ι' ι' A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) => (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> (Matrix.{u4, u4, u3} ι' ι' A)) (LinearEquiv.hasCoeToFun.{u3, u3, u1, max u4 u3} A A (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u3} ι' ι' A) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u4, u4, u3} ι' ι' A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))) (LinearMap.toMatrix.{u3, u4, u4, u1, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) ι' ι' _inst_11 _inst_11 (fun (a : ι') (b : ι') => _inst_12 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b' b') f))
but is expected to have type
- forall {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] {ι' : Type.{u4}} [_inst_11 : Fintype.{u4} ι'] [_inst_12 : DecidableEq.{succ u4} ι'] (tb : Trunc.{max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u1, u2, u3} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (b' : Basis.{u4, u2, u3} ι' A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.detAux.{u3, u1, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 tb) f) (Matrix.det.{u2, u4} ι' (fun (a : ι') (b : ι') => _inst_12 a b) _inst_11 A _inst_8 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u3, max (succ u2) (succ u4)} (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => Matrix.{u4, u4, u2} ι' ι' A) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u4, u2, u3, max u2 u4} (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (SMulZeroClass.toSMul.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (AddMonoid.toZero.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (AddMonoid.toAddZeroClass.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u4, u2, u3, max u2 u4} (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u3, max u2 u4, max (max u3 u2) u4} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u3, max u2 u4, max (max u3 u2) u4} A A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u3, max u2 u4} A A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u4, u4, u3, u3} A (CommRing.toCommSemiring.{u2} A _inst_8) ι' ι' _inst_11 _inst_11 (fun (a : ι') (b : ι') => _inst_12 a b) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 b' b') f))
+ forall {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] {ι' : Type.{u4}} [_inst_11 : Fintype.{u4} ι'] [_inst_12 : DecidableEq.{succ u4} ι'] (tb : Trunc.{max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u1, u2, u3} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (b' : Basis.{u4, u2, u3} ι' A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.detAux.{u3, u1, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 tb) f) (Matrix.det.{u2, u4} ι' (fun (a : ι') (b : ι') => _inst_12 a b) _inst_11 A _inst_8 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u3, max (succ u2) (succ u4)} (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => Matrix.{u4, u4, u2} ι' ι' A) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u4, u2, u3, max u2 u4} (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (SMulZeroClass.toSMul.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (AddMonoid.toZero.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (AddMonoid.toAddZeroClass.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u4, u2, u3, max u2 u4} (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u3, max u2 u4, max (max u3 u2) u4} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u3, max u2 u4, max (max u3 u2) u4} A A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u3, max u2 u4} A A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u4, u4, u3, u3} A (CommRing.toCommSemiring.{u2} A _inst_8) ι' ι' _inst_11 _inst_11 (fun (a : ι') (b : ι') => _inst_12 a b) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 b' b') f))
Case conversion may be inaccurate. Consider using '#align linear_map.det_aux_def' LinearMap.detAux_def''ₓ'. -/
theorem detAux_def'' {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (tb : Trunc <| Basis ι A M)
(b' : Basis ι' A M) (f : M →ₗ[A] M) :
@@ -288,7 +288,7 @@ end
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_11 : DecidableEq.{succ u1} M] {s : Finset.{u1} M} (b : Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} A (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f) (Matrix.det.{u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (fun (a : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (b : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) => Subtype.decidableEq.{u1} M (fun (x : M) => Membership.Mem.{u1, u1} M (Finset.{u1} M) (Finset.hasMem.{u1} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u1} M s) A _inst_8 (coeFn.{max (succ u1) (succ (max u1 u2)), max (succ u1) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u1, max u1 u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.toMatrix._proof_2.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u1, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.module.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u2, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u2, u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (fun (_x : LinearEquiv.{u2, u2, u1, max u1 u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.toMatrix._proof_2.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u1, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.module.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u2, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u2, u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) => (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A)) (LinearEquiv.hasCoeToFun.{u2, u2, u1, max u1 u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u1, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.module.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u2, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u2, u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.toMatrix._proof_2.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.toMatrix.{u2, u1, u1, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (Finset.Subtype.fintype.{u1} M s) (Finset.Subtype.fintype.{u1} M s) (fun (a : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (b : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) => Subtype.decidableEq.{u1} M (fun (x : M) => Membership.Mem.{u1, u1} M (Finset.{u1} M) (Finset.hasMem.{u1} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f))
but is expected to have type
- forall {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] [_inst_9 : Module.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] [_inst_11 : DecidableEq.{succ u2} M] {s : Finset.{u2} M} (b : Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9) (f : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) f) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.det.{u2, u1} M _inst_2 A _inst_8 _inst_9) f) (Matrix.det.{u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u2} M s) A _inst_8 (FunLike.coe.{max (succ u2) (succ u1), succ u2, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, u2, max u2 u1} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (SMulZeroClass.toSMul.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Module.toDistribMulAction.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, u2, max u2 u1} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u1, u2, max u2 u1, max u2 u1} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u2, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u2, max u2 u1} A A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.toMatrix.{u1, u2, u2, u2, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Finset.Subtype.fintype.{u2} M s) (Finset.Subtype.fintype.{u2} M s) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 b b) f))
+ forall {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] [_inst_9 : Module.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] [_inst_11 : DecidableEq.{succ u2} M] {s : Finset.{u2} M} (b : Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9) (f : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) f) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.det.{u2, u1} M _inst_2 A _inst_8 _inst_9) f) (Matrix.det.{u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u2} M s) A _inst_8 (FunLike.coe.{max (succ u2) (succ u1), succ u2, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, u2, max u2 u1} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (SMulZeroClass.toSMul.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Module.toDistribMulAction.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, u2, max u2 u1} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u1, u2, max u2 u1, max u2 u1} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u2, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u2, max u2 u1} A A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.toMatrix.{u1, u2, u2, u2, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Finset.Subtype.fintype.{u2} M s) (Finset.Subtype.fintype.{u2} M s) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 b b) f))
Case conversion may be inaccurate. Consider using '#align linear_map.det_eq_det_to_matrix_of_finset LinearMap.det_eq_det_toMatrix_of_finsetₓ'. -/
-- Auxiliary lemma, the `simp` normal form goes in the other direction
-- (using `linear_map.det_to_matrix`)
@@ -303,7 +303,7 @@ theorem det_eq_det_toMatrix_of_finset [DecidableEq M] {s : Finset M} (b : Basis
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u3}} [_inst_8 : CommRing.{u3} A] [_inst_9 : Module.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u3} A (Matrix.det.{u3, u2} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (coeFn.{max (succ u1) (succ (max u2 u3)), max (succ u1) (succ (max u2 u3))} (LinearEquiv.{u3, u3, u1, max u2 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (fun (_x : LinearEquiv.{u3, u3, u1, max u2 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) => (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> (Matrix.{u2, u2, u3} ι ι A)) (LinearEquiv.hasCoeToFun.{u3, u3, u1, max u2 u3} A A (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))) (LinearMap.toMatrix.{u3, u2, u2, u1, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f)) (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.det.{u1, u3} M _inst_2 A _inst_8 _inst_9) f)
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : Basis.{u3, u2, u1} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} A (Matrix.det.{u2, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => Matrix.{u3, u3, u2} ι ι A) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (SMulZeroClass.toSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toZero.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toAddZeroClass.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u1 u3) u2} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u1 u3) u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u3, u3, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f)
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : Basis.{u3, u2, u1} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} A (Matrix.det.{u2, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => Matrix.{u3, u3, u2} ι ι A) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (SMulZeroClass.toSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toZero.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toAddZeroClass.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u1 u3) u2} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u1 u3) u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u3, u3, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f)
Case conversion may be inaccurate. Consider using '#align linear_map.det_to_matrix LinearMap.det_toMatrixₓ'. -/
@[simp]
theorem det_toMatrix (b : Basis ι A M) (f : M →ₗ[A] M) : Matrix.det (toMatrix b b f) = f.det :=
@@ -316,7 +316,7 @@ theorem det_toMatrix (b : Basis ι A M) (f : M →ₗ[A] M) : Matrix.det (toMatr
lean 3 declaration is
forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {ι : Type.{u2}} [_inst_11 : Fintype.{u2} ι] [_inst_12 : DecidableEq.{succ u2} ι] (f : LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))), Eq.{succ u1} A (Matrix.det.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_12 a b) _inst_11 A _inst_8 (coeFn.{succ (max u2 u1), succ (max u2 u1)} (LinearEquiv.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_1.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.toMatrix'._proof_2.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_3.{u1, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι)) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (_x : LinearEquiv.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_1.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.toMatrix'._proof_2.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_3.{u1, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι)) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) -> (Matrix.{u2, u2, u1} ι ι A)) (LinearEquiv.hasCoeToFun.{u1, u1, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_3.{u1, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι)) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_1.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.toMatrix'._proof_2.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.toMatrix'.{u1, u2, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι ι _inst_11 (fun (a : ι) (b : ι) => _inst_12 a b)) f)) (coeFn.{max (succ u1) (succ (max u2 u1)), max (succ (max u2 u1)) (succ u1)} (MonoidHom.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u2 u1} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (fun (_x : MonoidHom.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u2 u1} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) => (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) -> A) (MonoidHom.hasCoeToFun.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u2 u1} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.det.{max u2 u1, u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A _inst_8 (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) f)
but is expected to have type
- forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {ι : Type.{u2}} [_inst_11 : Fintype.{u2} ι] [_inst_12 : DecidableEq.{succ u2} ι] (f : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))), Eq.{succ u1} A (Matrix.det.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_12 a b) _inst_11 A _inst_8 (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (_x : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => Matrix.{u2, u2, u1} ι ι A) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (SMulZeroClass.toSMul.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddMonoid.toZero.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddMonoid.toAddZeroClass.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Module.toDistribMulAction.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, max u2 u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.toMatrix'.{u1, u2, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι ι _inst_11 (fun (a : ι) (b : ι) => _inst_12 a b)) f)) (FunLike.coe.{max (succ u1) (succ (max u1 u2)), succ (max u1 u2), succ u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (_x : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => A) _x) (MulHomClass.toFunLike.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulOneClass.toMul.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.det.{max u1 u2, u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) A _inst_8 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) f)
+ forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {ι : Type.{u2}} [_inst_11 : Fintype.{u2} ι] [_inst_12 : DecidableEq.{succ u2} ι] (f : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))), Eq.{succ u1} A (Matrix.det.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_12 a b) _inst_11 A _inst_8 (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (_x : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => Matrix.{u2, u2, u1} ι ι A) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (SMulZeroClass.toSMul.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddMonoid.toZero.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddMonoid.toAddZeroClass.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Module.toDistribMulAction.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, max u2 u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.toMatrix'.{u1, u2, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι ι _inst_11 (fun (a : ι) (b : ι) => _inst_12 a b)) f)) (FunLike.coe.{max (succ u1) (succ (max u1 u2)), succ (max u1 u2), succ u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (_x : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => A) _x) (MulHomClass.toFunLike.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulOneClass.toMul.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.det.{max u1 u2, u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) A _inst_8 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) f)
Case conversion may be inaccurate. Consider using '#align linear_map.det_to_matrix' LinearMap.det_toMatrix'ₓ'. -/
@[simp]
theorem det_toMatrix' {ι : Type _} [Fintype ι] [DecidableEq ι] (f : (ι → A) →ₗ[A] ι → A) :
@@ -327,7 +327,7 @@ theorem det_toMatrix' {ι : Type _} [Fintype ι] [DecidableEq ι] (f : (ι → A
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (b : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (f : Matrix.{u3, u3, u1} ι ι R), Eq.{succ u1} R (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) (coeFn.{max (succ (max u3 u1)) (succ u2), max (succ (max u3 u1)) (succ u2)} (LinearEquiv.{u1, u1, max u3 u1, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.toLin._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.{u3, u3, u1} ι ι R) (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u1, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, u2, u2} R R M M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u3, u3, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u2} R R R M M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_3 (Matrix.toLin._proof_3.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3))) (fun (_x : LinearEquiv.{u1, u1, max u3 u1, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.toLin._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.{u3, u3, u1} ι ι R) (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u1, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, u2, u2} R R M M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u3, u3, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u2} R R R M M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_3 (Matrix.toLin._proof_3.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3))) => (Matrix.{u3, u3, u1} ι ι R) -> (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3)) (LinearEquiv.hasCoeToFun.{u1, u1, max u3 u1, u2} R R (Matrix.{u3, u3, u1} ι ι R) (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, u2, u2} R R M M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u3, u3, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u2} R R R M M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_3 (Matrix.toLin._proof_3.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.toLin._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.toLin.{u1, u3, u3, u2, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 b b) f)) (Matrix.det.{u1, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 f)
but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (f : Matrix.{u3, u3, u2} ι ι R), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (Matrix.{u3, u3, u2} ι ι R) (fun (a : Matrix.{u3, u3, u2} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Matrix.{u3, u3, u2} ι ι R) => LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) a) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, max u2 u3, u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (AddMonoid.toZero.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (SMulZeroClass.toSMul.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, max u2 u3, u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (SemilinearMapClass.distribMulActionHomClass.{u2, max u2 u3, u1, max (max u2 u1) u3} R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u2 u3, u1, max (max u2 u1) u3} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u2 u3, u1} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (Matrix.toLin.{u2, u3, u3, u1, u1} R (CommRing.toCommSemiring.{u2} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 b b) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (Matrix.{u3, u3, u2} ι ι R) (fun (_x : Matrix.{u3, u3, u2} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Matrix.{u3, u3, u2} ι ι R) => LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, max u2 u3, u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (AddMonoid.toZero.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (SMulZeroClass.toSMul.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, max u2 u3, u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (SemilinearMapClass.distribMulActionHomClass.{u2, max u2 u3, u1, max (max u2 u1) u3} R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u2 u3, u1, max (max u2 u1) u3} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u2 u3, u1} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (Matrix.toLin.{u2, u3, u3, u1, u1} R (CommRing.toCommSemiring.{u2} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 b b) f)) (Matrix.det.{u2, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 f)
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (f : Matrix.{u3, u3, u2} ι ι R), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (Matrix.{u3, u3, u2} ι ι R) (fun (a : Matrix.{u3, u3, u2} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Matrix.{u3, u3, u2} ι ι R) => LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) a) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, max u2 u3, u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (AddMonoid.toZero.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (SMulZeroClass.toSMul.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, max u2 u3, u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (SemilinearMapClass.distribMulActionHomClass.{u2, max u2 u3, u1, max (max u2 u1) u3} R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u2 u3, u1, max (max u2 u1) u3} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u2 u3, u1} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (Matrix.toLin.{u2, u3, u3, u1, u1} R (CommRing.toCommSemiring.{u2} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 b b) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (Matrix.{u3, u3, u2} ι ι R) (fun (_x : Matrix.{u3, u3, u2} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Matrix.{u3, u3, u2} ι ι R) => LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, max u2 u3, u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (AddMonoid.toZero.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (SMulZeroClass.toSMul.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, max u2 u3, u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (SemilinearMapClass.distribMulActionHomClass.{u2, max u2 u3, u1, max (max u2 u1) u3} R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u2 u3, u1, max (max u2 u1) u3} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u2 u3, u1} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (Matrix.toLin.{u2, u3, u3, u1, u1} R (CommRing.toCommSemiring.{u2} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 b b) f)) (Matrix.det.{u2, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 f)
Case conversion may be inaccurate. Consider using '#align linear_map.det_to_lin LinearMap.det_toLinₓ'. -/
@[simp]
theorem det_toLin (b : Basis ι R M) (f : Matrix ι ι R) :
@@ -339,7 +339,7 @@ theorem det_toLin (b : Basis ι R M) (f : Matrix ι ι R) :
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] (f : Matrix.{u2, u2, u1} ι ι R), Eq.{succ u1} R (coeFn.{max (succ u1) (succ (max u2 u1)), max (succ (max u2 u1)) (succ u1)} (MonoidHom.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u2 u1} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u2 u1} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) -> R) (MonoidHom.hasCoeToFun.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u2 u1} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{max u2 u1, u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) R _inst_1 (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (coeFn.{succ (max u2 u1), succ (max u2 u1)} (LinearEquiv.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.toLin'._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_3.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι))) (fun (_x : LinearEquiv.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.toLin'._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_3.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι))) => (Matrix.{u2, u2, u1} ι ι R) -> (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u1, u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_3.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.toLin'._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.toLin'.{u1, u2, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b)) f)) (Matrix.det.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 f)
but is expected to have type
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] (f : Matrix.{u2, u2, u1} ι ι R), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => R) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (Matrix.{u2, u2, u1} ι ι R) (fun (a : Matrix.{u2, u2, u1} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Matrix.{u2, u2, u1} ι ι R) => LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) a) (SMulHomClass.toFunLike.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toZero.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, max u2 u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (Matrix.toLin'.{u1, u2, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b)) f)) (FunLike.coe.{max (succ u1) (succ (max u1 u2)), succ (max u1 u2), succ u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (_x : LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => R) _x) (MulHomClass.toFunLike.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulOneClass.toMul.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulOneClass.toMul.{u1} R (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidHom.monoidHomClass.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (LinearMap.det.{max u1 u2, u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1))) R _inst_1 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (Matrix.{u2, u2, u1} ι ι R) (fun (_x : Matrix.{u2, u2, u1} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Matrix.{u2, u2, u1} ι ι R) => LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toZero.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, max u2 u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (Matrix.toLin'.{u1, u2, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b)) f)) (Matrix.det.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 f)
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] (f : Matrix.{u2, u2, u1} ι ι R), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => R) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (Matrix.{u2, u2, u1} ι ι R) (fun (a : Matrix.{u2, u2, u1} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Matrix.{u2, u2, u1} ι ι R) => LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) a) (SMulHomClass.toFunLike.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toZero.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, max u2 u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (Matrix.toLin'.{u1, u2, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b)) f)) (FunLike.coe.{max (succ u1) (succ (max u1 u2)), succ (max u1 u2), succ u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (_x : LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => R) _x) (MulHomClass.toFunLike.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulOneClass.toMul.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulOneClass.toMul.{u1} R (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidHom.monoidHomClass.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (LinearMap.det.{max u1 u2, u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1))) R _inst_1 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (Matrix.{u2, u2, u1} ι ι R) (fun (_x : Matrix.{u2, u2, u1} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Matrix.{u2, u2, u1} ι ι R) => LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toZero.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, max u2 u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (Matrix.toLin'.{u1, u2, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b)) f)) (Matrix.det.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 f)
Case conversion may be inaccurate. Consider using '#align linear_map.det_to_lin' LinearMap.det_toLin'ₓ'. -/
@[simp]
theorem det_toLin' (f : Matrix ι ι R) : LinearMap.det f.toLin' = f.det := by
@@ -350,7 +350,7 @@ theorem det_toLin' (f : Matrix ι ι R) : LinearMap.det f.toLin' = f.det := by
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_11 : DecidableEq.{succ u1} M] {P : A -> Prop} (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), (forall (s : Finset.{u1} M) (b : Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9), P (Matrix.det.{u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (fun (a : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (b : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) => Subtype.decidableEq.{u1} M (fun (x : M) => Membership.Mem.{u1, u1} M (Finset.{u1} M) (Finset.hasMem.{u1} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u1} M s) A _inst_8 (coeFn.{max (succ u1) (succ (max u1 u2)), max (succ u1) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u1, max u1 u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.toMatrix._proof_2.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u1, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.module.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u2, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u2, u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (fun (_x : LinearEquiv.{u2, u2, u1, max u1 u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.toMatrix._proof_2.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u1, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.module.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u2, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u2, u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) => (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A)) (LinearEquiv.hasCoeToFun.{u2, u2, u1, max u1 u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u1, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.module.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u2, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u2, u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.toMatrix._proof_2.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.toMatrix.{u2, u1, u1, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (Finset.Subtype.fintype.{u1} M s) (Finset.Subtype.fintype.{u1} M s) (fun (a : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (b : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) => Subtype.decidableEq.{u1} M (fun (x : M) => Membership.Mem.{u1, u1} M (Finset.{u1} M) (Finset.hasMem.{u1} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f))) -> (P (OfNat.ofNat.{u2} A 1 (OfNat.mk.{u2} A 1 (One.one.{u2} A (AddMonoidWithOne.toOne.{u2} A (AddGroupWithOne.toAddMonoidWithOne.{u2} A (AddCommGroupWithOne.toAddGroupWithOne.{u2} A (Ring.toAddCommGroupWithOne.{u2} A (CommRing.toRing.{u2} A _inst_8))))))))) -> (P (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f))
but is expected to have type
- forall {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] [_inst_9 : Module.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] [_inst_11 : DecidableEq.{succ u2} M] {P : A -> Prop} (f : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9), (forall (s : Finset.{u2} M) (b : Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9), P (Matrix.det.{u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u2} M s) A _inst_8 (FunLike.coe.{max (succ u2) (succ u1), succ u2, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, u2, max u2 u1} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (SMulZeroClass.toSMul.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Module.toDistribMulAction.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, u2, max u2 u1} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u1, u2, max u2 u1, max u2 u1} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u2, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u2, max u2 u1} A A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.toMatrix.{u1, u2, u2, u2, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Finset.Subtype.fintype.{u2} M s) (Finset.Subtype.fintype.{u2} M s) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 b b) f))) -> (P (OfNat.ofNat.{u1} A 1 (One.toOfNat1.{u1} A (Semiring.toOne.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) -> (P (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.det.{u2, u1} M _inst_2 A _inst_8 _inst_9) f))
+ forall {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] [_inst_9 : Module.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] [_inst_11 : DecidableEq.{succ u2} M] {P : A -> Prop} (f : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9), (forall (s : Finset.{u2} M) (b : Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9), P (Matrix.det.{u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u2} M s) A _inst_8 (FunLike.coe.{max (succ u2) (succ u1), succ u2, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, u2, max u2 u1} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (SMulZeroClass.toSMul.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Module.toDistribMulAction.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, u2, max u2 u1} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u1, u2, max u2 u1, max u2 u1} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u2, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u2, max u2 u1} A A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.toMatrix.{u1, u2, u2, u2, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Finset.Subtype.fintype.{u2} M s) (Finset.Subtype.fintype.{u2} M s) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 b b) f))) -> (P (OfNat.ofNat.{u1} A 1 (One.toOfNat1.{u1} A (Semiring.toOne.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) -> (P (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.det.{u2, u1} M _inst_2 A _inst_8 _inst_9) f))
Case conversion may be inaccurate. Consider using '#align linear_map.det_cases LinearMap.det_casesₓ'. -/
/-- To show `P f.det` it suffices to consider `P (to_matrix _ _ f).det` and `P 1`. -/
@[elab_as_elim]
@@ -677,7 +677,7 @@ theorem LinearEquiv.det_symm_mul_det {A : Type _} [CommRing A] [Module A M] (f :
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] [_inst_5 : Module.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] {ι : Type.{u4}} [_inst_6 : DecidableEq.{succ u4} ι] [_inst_7 : Fintype.{u4} ι] (f : LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (v : Basis.{u4, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (v' : Basis.{u4, u1, u3} ι R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5), IsUnit.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Matrix.det.{u1, u4} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (coeFn.{max (succ (max u2 u3)) (succ (max u4 u1)), max (succ (max u2 u3)) (succ (max u4 u1))} (LinearEquiv.{u1, u1, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.toMatrix._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.toMatrix._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearMap.toMatrix._proof_3.{u1, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (_x : LinearEquiv.{u1, u1, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.toMatrix._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.toMatrix._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearMap.toMatrix._proof_3.{u1, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) -> (Matrix.{u4, u4, u1} ι ι R)) (LinearEquiv.hasCoeToFun.{u1, u1, max u2 u3, max u4 u1} R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearMap.toMatrix._proof_3.{u1, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.toMatrix._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.toMatrix._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.toMatrix.{u1, u4, u4, u2, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 v v') ((fun (a : Sort.{max (succ u2) (succ u3)}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{max (succ u2) (succ u3), max (succ u2) (succ u3)} a b] => self.0) (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (HasLiftT.mk.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (CoeTCₓ.coe.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (coeBase.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearEquiv.LinearMap.hasCoe.{u1, u1, u2, u3} R R M M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))))) f)))
but is expected to have type
- forall {R : Type.{u4}} [_inst_1 : CommRing.{u4} R] {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] [_inst_3 : Module.{u4, u3} R M (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] {M' : Type.{u2}} [_inst_4 : AddCommGroup.{u2} M'] [_inst_5 : Module.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] (f : LinearEquiv.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (v : Basis.{u1, u4, u3} ι R M (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (v' : Basis.{u1, u4, u2} ι R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5), IsUnit.{u4} R (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (Matrix.det.{u4, u1} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (FunLike.coe.{max (max (max (succ u4) (succ u3)) (succ u2)) (succ u1), max (succ u3) (succ u2), max (succ u4) (succ u1)} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (fun (_x : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) => Matrix.{u1, u1, u4} ι ι R) _x) (SMulHomClass.toFunLike.{max (max (max u4 u3) u2) u1, u4, max u3 u2, max u4 u1} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (SMulZeroClass.toSMul.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toZero.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Module.toDistribMulAction.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))))))) (SMulZeroClass.toSMul.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (AddMonoid.toZero.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (AddMonoid.toAddZeroClass.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (Module.toDistribMulAction.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max (max u4 u3) u2) u1, u4, max u3 u2, max u4 u1} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (Module.toDistribMulAction.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5))))) (Module.toDistribMulAction.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (SemilinearMapClass.distribMulActionHomClass.{u4, max u3 u2, max u4 u1, max (max (max u4 u3) u2) u1} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (SemilinearEquivClass.instSemilinearMapClass.{u4, u4, max u3 u2, max u4 u1, max (max (max u4 u3) u2) u1} R R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u4, u4, max u3 u2, max u4 u1} R R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (LinearMap.toMatrix.{u4, u1, u1, u3, u2} R (CommRing.toCommSemiring.{u4} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 v v') (LinearEquiv.toLinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 f)))
+ forall {R : Type.{u4}} [_inst_1 : CommRing.{u4} R] {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] [_inst_3 : Module.{u4, u3} R M (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] {M' : Type.{u2}} [_inst_4 : AddCommGroup.{u2} M'] [_inst_5 : Module.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] (f : LinearEquiv.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (v : Basis.{u1, u4, u3} ι R M (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (v' : Basis.{u1, u4, u2} ι R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5), IsUnit.{u4} R (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (Matrix.det.{u4, u1} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (FunLike.coe.{max (max (max (succ u4) (succ u3)) (succ u2)) (succ u1), max (succ u3) (succ u2), max (succ u4) (succ u1)} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (fun (_x : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) => Matrix.{u1, u1, u4} ι ι R) _x) (SMulHomClass.toFunLike.{max (max (max u4 u3) u2) u1, u4, max u3 u2, max u4 u1} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (SMulZeroClass.toSMul.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toZero.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Module.toDistribMulAction.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))))))) (SMulZeroClass.toSMul.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (AddMonoid.toZero.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (AddMonoid.toAddZeroClass.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (Module.toDistribMulAction.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max (max u4 u3) u2) u1, u4, max u3 u2, max u4 u1} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (Module.toDistribMulAction.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5))))) (Module.toDistribMulAction.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (SemilinearMapClass.distribMulActionHomClass.{u4, max u3 u2, max u4 u1, max (max (max u4 u3) u2) u1} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (SemilinearEquivClass.instSemilinearMapClass.{u4, u4, max u3 u2, max u4 u1, max (max (max u4 u3) u2) u1} R R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u4, u4, max u3 u2, max u4 u1} R R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (LinearMap.toMatrix.{u4, u1, u1, u3, u2} R (CommRing.toCommSemiring.{u4} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 v v') (LinearEquiv.toLinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 f)))
Case conversion may be inaccurate. Consider using '#align linear_equiv.is_unit_det LinearEquiv.isUnit_detₓ'. -/
-- Cannot be stated using `linear_map.det` because `f` is not an endomorphism.
theorem LinearEquiv.isUnit_det (f : M ≃ₗ[R] M') (v : Basis ι R M) (v' : Basis ι R M') :
@@ -715,7 +715,7 @@ theorem LinearEquiv.det_coe_symm {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] (f
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] [_inst_5 : Module.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] {ι : Type.{u4}} [_inst_6 : DecidableEq.{succ u4} ι] [_inst_7 : Fintype.{u4} ι] {f : LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5} {v : Basis.{u4, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3} {v' : Basis.{u4, u1, u3} ι R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5}, (IsUnit.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Matrix.det.{u1, u4} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (coeFn.{max (succ (max u2 u3)) (succ (max u4 u1)), max (succ (max u2 u3)) (succ (max u4 u1))} (LinearEquiv.{u1, u1, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_1.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_2.{u1} R _inst_1) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearEquiv.ofIsUnitDet._proof_3.{u1, u3} R _inst_1 M' _inst_4 _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (_x : LinearEquiv.{u1, u1, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_1.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_2.{u1} R _inst_1) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearEquiv.ofIsUnitDet._proof_3.{u1, u3} R _inst_1 M' _inst_4 _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) -> (Matrix.{u4, u4, u1} ι ι R)) (LinearEquiv.hasCoeToFun.{u1, u1, max u2 u3, max u4 u1} R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearEquiv.ofIsUnitDet._proof_3.{u1, u3} R _inst_1 M' _inst_4 _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_4.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_5.{u1} R _inst_1)) (LinearMap.toMatrix.{u1, u4, u4, u2, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 v v') f))) -> (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_6.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_7.{u1} R _inst_1) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5)
but is expected to have type
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] [_inst_5 : Module.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] {ι : Type.{u4}} [_inst_6 : DecidableEq.{succ u4} ι] [_inst_7 : Fintype.{u4} ι] {f : LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5} {v : Basis.{u4, u1, u2} ι R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3} {v' : Basis.{u4, u1, u3} ι R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5}, (IsUnit.{u1} R (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.det.{u1, u4} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (FunLike.coe.{max (max (max (succ u1) (succ u2)) (succ u3)) (succ u4), max (succ u2) (succ u3), max (succ u1) (succ u4)} (LinearEquiv.{u1, u1, max u3 u2, max u1 u4} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (fun (_x : LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) => Matrix.{u4, u4, u1} ι ι R) _x) (SMulHomClass.toFunLike.{max (max (max u1 u2) u3) u4, u1, max u2 u3, max u1 u4} (LinearEquiv.{u1, u1, max u3 u2, max u1 u4} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (SMulZeroClass.toSMul.{u1, max u2 u3} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toZero.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u3} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u3} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u3} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))))))) (SMulZeroClass.toSMul.{u1, max u1 u4} R (Matrix.{u4, u4, u1} ι ι R) (AddMonoid.toZero.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u1, max u1 u4} R (Matrix.{u4, u4, u1} ι ι R) (AddMonoid.toAddZeroClass.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u1, max u1 u4} R (Matrix.{u4, u4, u1} ι ι R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (Module.toDistribMulAction.{u1, max u1 u4} R (Matrix.{u4, u4, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max (max u1 u2) u3) u4, u1, max u2 u3, max u1 u4} (LinearEquiv.{u1, u1, max u3 u2, max u1 u4} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (AddCommMonoid.toAddMonoid.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (Module.toDistribMulAction.{u1, max u2 u3} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5))))) (Module.toDistribMulAction.{u1, max u1 u4} R (Matrix.{u4, u4, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u3, max u1 u4, max (max (max u1 u2) u3) u4} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearEquiv.{u1, u1, max u3 u2, max u1 u4} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u3, max u1 u4, max (max (max u1 u2) u3) u4} R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearEquiv.{u1, u1, max u3 u2, max u1 u4} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u3, max u1 u4} R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (LinearMap.toMatrix.{u1, u4, u4, u2, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 v v') f))) -> (LinearEquiv.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5)
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] [_inst_5 : Module.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] {ι : Type.{u4}} [_inst_6 : DecidableEq.{succ u4} ι] [_inst_7 : Fintype.{u4} ι] {f : LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5} {v : Basis.{u4, u1, u2} ι R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3} {v' : Basis.{u4, u1, u3} ι R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5}, (IsUnit.{u1} R (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.det.{u1, u4} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (FunLike.coe.{max (max (max (succ u1) (succ u2)) (succ u3)) (succ u4), max (succ u2) (succ u3), max (succ u1) (succ u4)} (LinearEquiv.{u1, u1, max u3 u2, max u1 u4} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (fun (_x : LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) => Matrix.{u4, u4, u1} ι ι R) _x) (SMulHomClass.toFunLike.{max (max (max u1 u2) u3) u4, u1, max u2 u3, max u1 u4} (LinearEquiv.{u1, u1, max u3 u2, max u1 u4} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (SMulZeroClass.toSMul.{u1, max u2 u3} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toZero.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u3} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u3} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u3} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))))))) (SMulZeroClass.toSMul.{u1, max u1 u4} R (Matrix.{u4, u4, u1} ι ι R) (AddMonoid.toZero.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u1, max u1 u4} R (Matrix.{u4, u4, u1} ι ι R) (AddMonoid.toAddZeroClass.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u1, max u1 u4} R (Matrix.{u4, u4, u1} ι ι R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (Module.toDistribMulAction.{u1, max u1 u4} R (Matrix.{u4, u4, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max (max u1 u2) u3) u4, u1, max u2 u3, max u1 u4} (LinearEquiv.{u1, u1, max u3 u2, max u1 u4} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (AddCommMonoid.toAddMonoid.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (Module.toDistribMulAction.{u1, max u2 u3} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5))))) (Module.toDistribMulAction.{u1, max u1 u4} R (Matrix.{u4, u4, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u3, max u1 u4, max (max (max u1 u2) u3) u4} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearEquiv.{u1, u1, max u3 u2, max u1 u4} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u3, max u1 u4, max (max (max u1 u2) u3) u4} R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearEquiv.{u1, u1, max u3 u2, max u1 u4} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u3, max u1 u4} R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (LinearMap.toMatrix.{u1, u4, u4, u2, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 v v') f))) -> (LinearEquiv.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5)
Case conversion may be inaccurate. Consider using '#align linear_equiv.of_is_unit_det LinearEquiv.ofIsUnitDetₓ'. -/
/-- Builds a linear equivalence from a linear map whose determinant in some bases is a unit. -/
@[simps]
@@ -745,7 +745,7 @@ def LinearEquiv.ofIsUnitDet {f : M →ₗ[R] M'} {v : Basis ι R M} {v' : Basis
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] [_inst_5 : Module.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] {ι : Type.{u4}} [_inst_6 : DecidableEq.{succ u4} ι] [_inst_7 : Fintype.{u4} ι] {f : LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5} {v : Basis.{u4, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3} {v' : Basis.{u4, u1, u3} ι R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5} (h : IsUnit.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Matrix.det.{u1, u4} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (coeFn.{max (succ (max u2 u3)) (succ (max u4 u1)), max (succ (max u2 u3)) (succ (max u4 u1))} (LinearEquiv.{u1, u1, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.toMatrix._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.toMatrix._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearMap.toMatrix._proof_3.{u1, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (_x : LinearEquiv.{u1, u1, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.toMatrix._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.toMatrix._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearMap.toMatrix._proof_3.{u1, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) -> (Matrix.{u4, u4, u1} ι ι R)) (LinearEquiv.hasCoeToFun.{u1, u1, max u2 u3, max u4 u1} R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearMap.toMatrix._proof_3.{u1, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.toMatrix._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.toMatrix._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.toMatrix.{u1, u4, u4, u2, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 v v') f))), Eq.{max (succ u2) (succ u3)} (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) ((fun (a : Sort.{max (succ u2) (succ u3)}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{max (succ u2) (succ u3), max (succ u2) (succ u3)} a b] => self.0) (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_6.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_7.{u1} R _inst_1) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (HasLiftT.mk.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_6.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_7.{u1} R _inst_1) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (CoeTCₓ.coe.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_6.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_7.{u1} R _inst_1) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (coeBase.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_6.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_7.{u1} R _inst_1) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearEquiv.LinearMap.hasCoe.{u1, u1, u2, u3} R R M M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_6.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_7.{u1} R _inst_1))))) (LinearEquiv.ofIsUnitDet.{u1, u2, u3, u4} R _inst_1 M _inst_2 _inst_3 M' _inst_4 _inst_5 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 f v v' h)) f
but is expected to have type
- forall {R : Type.{u4}} [_inst_1 : CommRing.{u4} R] {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] [_inst_3 : Module.{u4, u3} R M (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] {M' : Type.{u2}} [_inst_4 : AddCommGroup.{u2} M'] [_inst_5 : Module.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] {f : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5} {v : Basis.{u1, u4, u3} ι R M (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3} {v' : Basis.{u1, u4, u2} ι R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5} (h : IsUnit.{u4} R (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (Matrix.det.{u4, u1} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (FunLike.coe.{max (max (max (succ u4) (succ u3)) (succ u2)) (succ u1), max (succ u3) (succ u2), max (succ u4) (succ u1)} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (fun (_x : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) => Matrix.{u1, u1, u4} ι ι R) _x) (SMulHomClass.toFunLike.{max (max (max u4 u3) u2) u1, u4, max u3 u2, max u4 u1} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (SMulZeroClass.toSMul.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toZero.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Module.toDistribMulAction.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))))))) (SMulZeroClass.toSMul.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (AddMonoid.toZero.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (AddMonoid.toAddZeroClass.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (Module.toDistribMulAction.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max (max u4 u3) u2) u1, u4, max u3 u2, max u4 u1} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (Module.toDistribMulAction.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5))))) (Module.toDistribMulAction.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (SemilinearMapClass.distribMulActionHomClass.{u4, max u3 u2, max u4 u1, max (max (max u4 u3) u2) u1} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (SemilinearEquivClass.instSemilinearMapClass.{u4, u4, max u3 u2, max u4 u1, max (max (max u4 u3) u2) u1} R R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u4, u4, max u3 u2, max u4 u1} R R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (LinearMap.toMatrix.{u4, u1, u1, u3, u2} R (CommRing.toCommSemiring.{u4} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 v v') f))), Eq.{max (succ u3) (succ u2)} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearEquiv.toLinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (LinearEquiv.ofIsUnitDet.{u4, u3, u2, u1} R _inst_1 M _inst_2 _inst_3 M' _inst_4 _inst_5 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 f v v' h)) f
+ forall {R : Type.{u4}} [_inst_1 : CommRing.{u4} R] {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] [_inst_3 : Module.{u4, u3} R M (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] {M' : Type.{u2}} [_inst_4 : AddCommGroup.{u2} M'] [_inst_5 : Module.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] {f : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5} {v : Basis.{u1, u4, u3} ι R M (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3} {v' : Basis.{u1, u4, u2} ι R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5} (h : IsUnit.{u4} R (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (Matrix.det.{u4, u1} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (FunLike.coe.{max (max (max (succ u4) (succ u3)) (succ u2)) (succ u1), max (succ u3) (succ u2), max (succ u4) (succ u1)} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (fun (_x : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) => Matrix.{u1, u1, u4} ι ι R) _x) (SMulHomClass.toFunLike.{max (max (max u4 u3) u2) u1, u4, max u3 u2, max u4 u1} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (SMulZeroClass.toSMul.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toZero.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Module.toDistribMulAction.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))))))) (SMulZeroClass.toSMul.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (AddMonoid.toZero.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (AddMonoid.toAddZeroClass.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (Module.toDistribMulAction.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max (max u4 u3) u2) u1, u4, max u3 u2, max u4 u1} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (Module.toDistribMulAction.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5))))) (Module.toDistribMulAction.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (SemilinearMapClass.distribMulActionHomClass.{u4, max u3 u2, max u4 u1, max (max (max u4 u3) u2) u1} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (SemilinearEquivClass.instSemilinearMapClass.{u4, u4, max u3 u2, max u4 u1, max (max (max u4 u3) u2) u1} R R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u4, u4, max u3 u2, max u4 u1} R R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (LinearMap.toMatrix.{u4, u1, u1, u3, u2} R (CommRing.toCommSemiring.{u4} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 v v') f))), Eq.{max (succ u3) (succ u2)} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearEquiv.toLinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (LinearEquiv.ofIsUnitDet.{u4, u3, u2, u1} R _inst_1 M _inst_2 _inst_3 M' _inst_4 _inst_5 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 f v v' h)) f
Case conversion may be inaccurate. Consider using '#align linear_equiv.coe_of_is_unit_det LinearEquiv.coe_ofIsUnitDetₓ'. -/
@[simp]
theorem LinearEquiv.coe_ofIsUnitDet {f : M →ₗ[R] M'} {v : Basis ι R M} {v' : Basis ι R M'}
@@ -778,7 +778,7 @@ def LinearMap.equivOfDetNeZero {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCom
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (e : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (f : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (f' : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3), (forall (x : M), Eq.{succ u2} M (coeFn.{succ u2, succ u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => M -> M) (LinearMap.hasCoeToFun.{u1, u1, u2, u2} R R M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) f x) (coeFn.{succ u2, succ u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => M -> M) (LinearMap.hasCoeToFun.{u1, u1, u2, u2} R R M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) f' (coeFn.{succ u2, succ u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => M -> M) (LinearEquiv.hasCoeToFun.{u1, u1, u2, u2} R R M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) e x))) -> (Associated.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) f) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) f'))
but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (e : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (f : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (f' : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3), (forall (x : M), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M) x) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f x) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f' (FunLike.coe.{succ u1, succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M) _x) (SMulHomClass.toFunLike.{u1, u2, u1, u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R M M (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (Module.toDistribMulAction.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (Module.toDistribMulAction.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{u1, u2, u1, u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R M M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (Module.toDistribMulAction.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Module.toDistribMulAction.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, u1, u1} R M M (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, u1, u1} R R M M (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) e x))) -> (Associated.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (MonoidWithZero.toMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) _inst_1)))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) f'))
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (e : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (f : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (f' : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3), (forall (x : M), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M) x) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f x) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f' (FunLike.coe.{succ u1, succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : M) => M) _x) (SMulHomClass.toFunLike.{u1, u2, u1, u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R M M (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (Module.toDistribMulAction.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (Module.toDistribMulAction.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{u1, u2, u1, u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R M M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (Module.toDistribMulAction.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Module.toDistribMulAction.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, u1, u1} R M M (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, u1, u1} R R M M (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) e x))) -> (Associated.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (MonoidWithZero.toMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) _inst_1)))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) f'))
Case conversion may be inaccurate. Consider using '#align linear_map.associated_det_of_eq_comp LinearMap.associated_det_of_eq_compₓ'. -/
theorem LinearMap.associated_det_of_eq_comp (e : M ≃ₗ[R] M) (f f' : M →ₗ[R] M)
(h : ∀ x, f x = f' (e x)) : Associated f.det f'.det :=
@@ -958,7 +958,7 @@ variable {A : Type _} [CommRing A] [Module A M]
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u3}} [_inst_8 : CommRing.{u3} A] [_inst_9 : Module.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (e : Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (v : ι -> M), Eq.{succ u3} A (coeFn.{max (succ u1) (succ u3) (succ u2), max (max (succ u2) (succ u1)) (succ u3)} (AlternatingMap.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) (fun (_x : AlternatingMap.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) => (ι -> M) -> A) (AlternatingMap.coeFun.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) (Basis.det.{u3, u1, u2} A _inst_8 M _inst_2 _inst_9 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (Function.comp.{succ u2, succ u1, succ u1} ι M M (coeFn.{succ u1, succ u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => M -> M) (LinearMap.hasCoeToFun.{u3, u3, u1, u1} A A M M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))))) f) v)) (HMul.hMul.{u3, u3, u3} A A A (instHMul.{u3} A (Distrib.toHasMul.{u3} A (Ring.toDistrib.{u3} A (CommRing.toRing.{u3} A _inst_8)))) (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.det.{u1, u3} M _inst_2 A _inst_8 _inst_9) f) (coeFn.{max (succ u1) (succ u3) (succ u2), max (max (succ u2) (succ u1)) (succ u3)} (AlternatingMap.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) (fun (_x : AlternatingMap.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) => (ι -> M) -> A) (AlternatingMap.coeFun.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) (Basis.det.{u3, u1, u2} A _inst_8 M _inst_2 _inst_9 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (e : Basis.{u3, u2, u1} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (v : ι -> M), Eq.{succ u2} A (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) ι) (ι -> M) (fun (_x : ι -> M) => A) (AlternatingMap.funLike.{u2, u1, u2, u3} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) ι) (Basis.det.{u2, u1, u3} A _inst_8 M _inst_2 _inst_9 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (Function.comp.{succ u3, succ u1, succ u1} ι M M (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) f) v)) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) A ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (NonUnitalNonAssocRing.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (NonAssocRing.toNonUnitalNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) _inst_8))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) ι) (ι -> M) (fun (_x : ι -> M) => A) (AlternatingMap.funLike.{u2, u1, u2, u3} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) ι) (Basis.det.{u2, u1, u3} A _inst_8 M _inst_2 _inst_9 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (e : Basis.{u3, u2, u1} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (v : ι -> M), Eq.{succ u2} A (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) ι) (ι -> M) (fun (_x : ι -> M) => A) (AlternatingMap.funLike.{u2, u1, u2, u3} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) ι) (Basis.det.{u2, u1, u3} A _inst_8 M _inst_2 _inst_9 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (Function.comp.{succ u3, succ u1, succ u1} ι M M (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) f) v)) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) A ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (NonUnitalNonAssocRing.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (NonAssocRing.toNonUnitalNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) _inst_8))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) ι) (ι -> M) (fun (_x : ι -> M) => A) (AlternatingMap.funLike.{u2, u1, u2, u3} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) ι) (Basis.det.{u2, u1, u3} A _inst_8 M _inst_2 _inst_9 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v))
Case conversion may be inaccurate. Consider using '#align basis.det_comp Basis.det_compₓ'. -/
@[simp]
theorem Basis.det_comp (e : Basis ι A M) (f : M →ₗ[A] M) (v : ι → M) :
@@ -972,7 +972,7 @@ theorem Basis.det_comp (e : Basis ι A M) (f : M →ₗ[A] M) (v : ι → M) :
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {M' : Type.{u2}} [_inst_4 : AddCommGroup.{u2} M'] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u4}} [_inst_8 : CommRing.{u4} A] [_inst_9 : Module.{u4, u1} A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_10 : Module.{u4, u2} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4)] (b : Basis.{u3, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (b' : Basis.{u3, u4, u2} ι A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10) (f : LinearMap.{u4, u4, u1, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_9 _inst_10), Eq.{succ u4} A (coeFn.{max (succ u2) (succ u4) (succ u3), max (max (succ u3) (succ u2)) (succ u4)} (AlternatingMap.{u4, u2, u4, u3} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 A (AddCommGroup.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toAddCommGroup.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) ι) (fun (_x : AlternatingMap.{u4, u2, u4, u3} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 A (AddCommGroup.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toAddCommGroup.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) ι) => (ι -> M') -> A) (AlternatingMap.coeFun.{u4, u2, u4, u3} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 A (AddCommGroup.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toAddCommGroup.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) ι) (Basis.det.{u4, u2, u3} A _inst_8 M' _inst_4 _inst_10 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b') (Function.comp.{succ u3, succ u1, succ u2} ι M M' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (LinearMap.{u4, u4, u1, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_9 _inst_10) (fun (_x : LinearMap.{u4, u4, u1, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_9 _inst_10) => M -> M') (LinearMap.hasCoeToFun.{u4, u4, u1, u2} A A M M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_9 _inst_10 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))))) f) (coeFn.{max (succ u3) (succ u4) (succ u1), max (succ u3) (succ u1)} (Basis.{u3, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (fun (_x : Basis.{u3, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u4) (succ u1), succ u3, succ u1} (Basis.{u3, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) b))) (coeFn.{max (succ u4) (succ u2), max (succ u2) (succ u4)} (MonoidHom.{u2, u4} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Module.End.ring.{u4, u2} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) _inst_4 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))))) (fun (_x : MonoidHom.{u2, u4} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Module.End.ring.{u4, u2} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) _inst_4 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))))) => (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) -> A) (MonoidHom.hasCoeToFun.{u2, u4} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Module.End.ring.{u4, u2} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) _inst_4 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))))) (LinearMap.det.{u2, u4} M' _inst_4 A _inst_8 _inst_10) (LinearMap.comp.{u4, u4, u4, u2, u1, u2} A A A M' M M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_9 _inst_10 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomCompTriple.ids.{u4, u4} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))))) f ((fun (a : Sort.{max (succ u2) (succ u1)}) (b : Sort.{max (succ u2) (succ u1)}) [self : HasLiftT.{max (succ u2) (succ u1), max (succ u2) (succ u1)} a b] => self.0) (LinearEquiv.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (LinearMap.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (HasLiftT.mk.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (LinearMap.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (CoeTCₓ.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (LinearMap.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (coeBase.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (LinearMap.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u4, u4, u2, u1} A A M' M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))))))) (Basis.equiv.{u3, u3, u4, u2, u1} ι ι A M' M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 b' b (Equiv.refl.{succ u3} ι)))))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u4}} [_inst_8 : CommRing.{u4} A] [_inst_9 : Module.{u4, u1} A M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_10 : Module.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] (b : Basis.{u2, u4, u1} ι A M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (b' : Basis.{u2, u4, u3} ι A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10) (f : LinearMap.{u4, u4, u1, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_9 _inst_10), Eq.{succ u4} A (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u2), max (succ u3) (succ u2), succ u4} (AlternatingMap.{u4, u3, u4, u2} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))) ι) (ι -> M') (fun (_x : ι -> M') => A) (AlternatingMap.funLike.{u4, u3, u4, u2} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))) ι) (Basis.det.{u4, u3, u2} A _inst_8 M' _inst_4 _inst_10 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b') (Function.comp.{succ u2, succ u1, succ u3} ι M M' (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (LinearMap.{u4, u4, u1, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_9 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u4, u4, u1, u3} A A M M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_9 _inst_10 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))))) f) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), succ u2, succ u1} (Basis.{u2, u4, u1} ι A M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u4, u1} ι A M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) b))) (FunLike.coe.{max (succ u4) (succ u3), succ u3, succ u4} (MonoidHom.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))) (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (fun (_x : LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) => A) _x) (MulHomClass.toFunLike.{max u4 u3, u3, u4} (MonoidHom.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))) (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulOneClass.toMul.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10))))) (MulOneClass.toMul.{u4} A (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u4 u3, u3, u4} (MonoidHom.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))) (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))))) (LinearMap.det.{u3, u4} M' _inst_4 A _inst_8 _inst_10) (LinearMap.comp.{u4, u4, u4, u3, u1, u3} A A A M' M M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_9 _inst_10 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHomCompTriple.ids.{u4, u4} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))))) f (LinearEquiv.toLinearMap.{u4, u4, u3, u1} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9 (Basis.equiv.{u2, u2, u4, u3, u1} ι ι A M' M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 b' b (Equiv.refl.{succ u2} ι)))))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u4}} [_inst_8 : CommRing.{u4} A] [_inst_9 : Module.{u4, u1} A M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_10 : Module.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] (b : Basis.{u2, u4, u1} ι A M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (b' : Basis.{u2, u4, u3} ι A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10) (f : LinearMap.{u4, u4, u1, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_9 _inst_10), Eq.{succ u4} A (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u2), max (succ u3) (succ u2), succ u4} (AlternatingMap.{u4, u3, u4, u2} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))) ι) (ι -> M') (fun (_x : ι -> M') => A) (AlternatingMap.funLike.{u4, u3, u4, u2} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))) ι) (Basis.det.{u4, u3, u2} A _inst_8 M' _inst_4 _inst_10 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b') (Function.comp.{succ u2, succ u1, succ u3} ι M M' (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (LinearMap.{u4, u4, u1, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_9 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u4, u4, u1, u3} A A M M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_9 _inst_10 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))))) f) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), succ u2, succ u1} (Basis.{u2, u4, u1} ι A M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u4, u1} ι A M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) b))) (FunLike.coe.{max (succ u4) (succ u3), succ u3, succ u4} (MonoidHom.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))) (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (fun (_x : LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) => A) _x) (MulHomClass.toFunLike.{max u4 u3, u3, u4} (MonoidHom.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))) (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulOneClass.toMul.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10))))) (MulOneClass.toMul.{u4} A (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u4 u3, u3, u4} (MonoidHom.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))) (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))))) (LinearMap.det.{u3, u4} M' _inst_4 A _inst_8 _inst_10) (LinearMap.comp.{u4, u4, u4, u3, u1, u3} A A A M' M M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_9 _inst_10 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHomCompTriple.ids.{u4, u4} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))))) f (LinearEquiv.toLinearMap.{u4, u4, u3, u1} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9 (Basis.equiv.{u2, u2, u4, u3, u1} ι ι A M' M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 b' b (Equiv.refl.{succ u2} ι)))))
Case conversion may be inaccurate. Consider using '#align basis.det_comp_basis Basis.det_comp_basisₓ'. -/
@[simp]
theorem Basis.det_comp_basis [Module A M'] (b : Basis ι A M) (b' : Basis ι A M') (f : M →ₗ[A] M') :
@@ -1010,7 +1010,7 @@ theorem Basis.det_reindex_symm {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (b
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] [_inst_5 : Module.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] {ι : Type.{u4}} [_inst_6 : DecidableEq.{succ u4} ι] [_inst_7 : Fintype.{u4} ι] (b : Basis.{u4, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (f : LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (v : ι -> M'), Eq.{succ u1} R (coeFn.{max (succ u3) (succ u1) (succ u4), max (max (succ u4) (succ u3)) (succ u1)} (AlternatingMap.{u1, u3, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u3, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M') -> R) (AlternatingMap.coeFun.{u1, u3, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u3, u4} R _inst_1 M' _inst_4 _inst_5 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 (Basis.map.{u4, u1, u2, u3} ι R M M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 b f)) v) (coeFn.{max (succ u2) (succ u1) (succ u4), max (max (succ u4) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u4} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) (Function.comp.{succ u4, succ u3, succ u2} ι M' M (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearEquiv.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (fun (_x : LinearEquiv.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) => M' -> M) (LinearEquiv.hasCoeToFun.{u1, u1, u3, u2} R R M' M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.symm.{u1, u1, u2, u3} R R M M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) f)) v))
but is expected to have type
- forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u1}} [_inst_4 : AddCommGroup.{u1} M'] [_inst_5 : Module.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4)] {ι : Type.{u4}} [_inst_6 : DecidableEq.{succ u4} ι] [_inst_7 : Fintype.{u4} ι] (b : Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (f : LinearEquiv.{u3, u3, u2, u1} 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))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5) (v : ι -> M'), Eq.{succ u3} R (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u4), max (succ u1) (succ u4), succ u3} (AlternatingMap.{u3, u1, u3, u4} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (ι -> M') (fun (_x : ι -> M') => R) (AlternatingMap.funLike.{u3, u1, u3, u4} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (Basis.det.{u3, u1, u4} R _inst_1 M' _inst_4 _inst_5 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 (Basis.map.{u4, u3, u2, u1} ι R M M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 b f)) v) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u4), succ u3} (AlternatingMap.{u3, u2, u3, u4} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u3, u2, u3, u4} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (Basis.det.{u3, u2, u4} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) (Function.comp.{succ u4, succ u1, succ u2} ι M' M (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearEquiv.{u3, u3, u1, 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))) M' M (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _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 u1, u3, u1, u2} (LinearEquiv.{u3, u3, u1, 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))) M' M (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) R M' M (SMulZeroClass.toSMul.{u3, u1} R M' (AddMonoid.toZero.{u1} M' (AddCommMonoid.toAddMonoid.{u1} M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4))) (DistribSMul.toSMulZeroClass.{u3, u1} R M' (AddMonoid.toAddZeroClass.{u1} M' (AddCommMonoid.toAddMonoid.{u1} M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4))) (DistribMulAction.toDistribSMul.{u3, u1} R M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4)) (Module.toDistribMulAction.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u3, u1, u2} (LinearEquiv.{u3, u3, u1, 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))) M' M (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) R M' M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4)) (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Module.toDistribMulAction.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, u1, u2, max u2 u1} R M' M (LinearEquiv.{u3, u3, u1, 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))) M' M (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u1, u2, max u2 u1} R R M' M (LinearEquiv.{u3, u3, u1, 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))) M' M (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 (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, u1, u2} R R M' M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 (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.symm.{u3, u3, u2, u1} R R M M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5 (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))) f)) v))
+ forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u1}} [_inst_4 : AddCommGroup.{u1} M'] [_inst_5 : Module.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4)] {ι : Type.{u4}} [_inst_6 : DecidableEq.{succ u4} ι] [_inst_7 : Fintype.{u4} ι] (b : Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (f : LinearEquiv.{u3, u3, u2, u1} 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))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5) (v : ι -> M'), Eq.{succ u3} R (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u4), max (succ u1) (succ u4), succ u3} (AlternatingMap.{u3, u1, u3, u4} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (ι -> M') (fun (_x : ι -> M') => R) (AlternatingMap.funLike.{u3, u1, u3, u4} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (Basis.det.{u3, u1, u4} R _inst_1 M' _inst_4 _inst_5 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 (Basis.map.{u4, u3, u2, u1} ι R M M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 b f)) v) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u4), succ u3} (AlternatingMap.{u3, u2, u3, u4} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u3, u2, u3, u4} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (Basis.det.{u3, u2, u4} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) (Function.comp.{succ u4, succ u1, succ u2} ι M' M (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearEquiv.{u3, u3, u1, 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))) M' M (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _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 u1, u3, u1, u2} (LinearEquiv.{u3, u3, u1, 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))) M' M (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) R M' M (SMulZeroClass.toSMul.{u3, u1} R M' (AddMonoid.toZero.{u1} M' (AddCommMonoid.toAddMonoid.{u1} M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4))) (DistribSMul.toSMulZeroClass.{u3, u1} R M' (AddMonoid.toAddZeroClass.{u1} M' (AddCommMonoid.toAddMonoid.{u1} M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4))) (DistribMulAction.toDistribSMul.{u3, u1} R M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4)) (Module.toDistribMulAction.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u3, u1, u2} (LinearEquiv.{u3, u3, u1, 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))) M' M (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) R M' M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4)) (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Module.toDistribMulAction.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, u1, u2, max u2 u1} R M' M (LinearEquiv.{u3, u3, u1, 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))) M' M (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u1, u2, max u2 u1} R R M' M (LinearEquiv.{u3, u3, u1, 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))) M' M (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 (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, u1, u2} R R M' M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 (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.symm.{u3, u3, u2, u1} R R M M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5 (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))) f)) v))
Case conversion may be inaccurate. Consider using '#align basis.det_map Basis.det_mapₓ'. -/
@[simp]
theorem Basis.det_map (b : Basis ι R M) (f : M ≃ₗ[R] M') (v : ι → M') :
mathlib commit https://github.com/leanprover-community/mathlib/commit/95a87616d63b3cb49d3fe678d416fbe9c4217bf4
@@ -194,7 +194,7 @@ irreducible_def detAux : Trunc (Basis ι A M) → (M →ₗ[A] M) →* A :=
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u3}} [_inst_8 : CommRing.{u3} A] [_inst_9 : Module.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u3} A (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.detAux.{u1, u2, u3} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 (Trunc.mk.{max (succ u2) (succ u3) (succ u1)} (Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) b)) f) (Matrix.det.{u3, u2} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (coeFn.{max (succ u1) (succ (max u2 u3)), max (succ u1) (succ (max u2 u3))} (LinearEquiv.{u3, u3, u1, max u2 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (fun (_x : LinearEquiv.{u3, u3, u1, max u2 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) => (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> (Matrix.{u2, u2, u3} ι ι A)) (LinearEquiv.hasCoeToFun.{u3, u3, u1, max u2 u3} A A (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))) (LinearMap.toMatrix.{u3, u2, u2, u1, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : Basis.{u3, u2, u1} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.detAux.{u1, u3, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 (Trunc.mk.{max (max (succ u2) (succ u3)) (succ u1)} (Basis.{u3, u2, u1} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) b)) f) (Matrix.det.{u2, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => Matrix.{u3, u3, u2} ι ι A) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (SMulZeroClass.toSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toZero.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toAddZeroClass.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u1 u3) u2} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u1 u3) u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u3, u3, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : Basis.{u3, u2, u1} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.detAux.{u1, u3, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 (Trunc.mk.{max (max (succ u2) (succ u3)) (succ u1)} (Basis.{u3, u2, u1} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) b)) f) (Matrix.det.{u2, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => Matrix.{u3, u3, u2} ι ι A) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (SMulZeroClass.toSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toZero.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toAddZeroClass.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u1 u3) u2} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u1 u3) u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u3, u3, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f))
Case conversion may be inaccurate. Consider using '#align linear_map.det_aux_def LinearMap.detAux_def'ₓ'. -/
/-- Unfold lemma for `det_aux`.
@@ -211,7 +211,7 @@ theorem detAux_def' (b : Basis ι A M) (f : M →ₗ[A] M) :
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u3}} [_inst_8 : CommRing.{u3} A] [_inst_9 : Module.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι' : Type.{u4}} [_inst_11 : Fintype.{u4} ι'] [_inst_12 : DecidableEq.{succ u4} ι'] (tb : Trunc.{max (succ u2) (succ u3) (succ u1)} (Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (b' : Basis.{u4, u3, u1} ι' A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u3} A (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.detAux.{u1, u2, u3} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 tb) f) (Matrix.det.{u3, u4} ι' (fun (a : ι') (b : ι') => _inst_12 a b) _inst_11 A _inst_8 (coeFn.{max (succ u1) (succ (max u4 u3)), max (succ u1) (succ (max u4 u3))} (LinearEquiv.{u3, u3, u1, max u4 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u3} ι' ι' A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u4, u4, u3} ι' ι' A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (fun (_x : LinearEquiv.{u3, u3, u1, max u4 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u3} ι' ι' A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u4, u4, u3} ι' ι' A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) => (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> (Matrix.{u4, u4, u3} ι' ι' A)) (LinearEquiv.hasCoeToFun.{u3, u3, u1, max u4 u3} A A (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u3} ι' ι' A) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u4, u4, u3} ι' ι' A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))) (LinearMap.toMatrix.{u3, u4, u4, u1, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) ι' ι' _inst_11 _inst_11 (fun (a : ι') (b : ι') => _inst_12 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b' b') f))
but is expected to have type
- forall {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] {ι' : Type.{u4}} [_inst_11 : Fintype.{u4} ι'] [_inst_12 : DecidableEq.{succ u4} ι'] (tb : Trunc.{max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u1, u2, u3} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (b' : Basis.{u4, u2, u3} ι' A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.detAux.{u3, u1, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 tb) f) (Matrix.det.{u2, u4} ι' (fun (a : ι') (b : ι') => _inst_12 a b) _inst_11 A _inst_8 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u3, max (succ u2) (succ u4)} (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => Matrix.{u4, u4, u2} ι' ι' A) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u4, u2, u3, max u2 u4} (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (SMulZeroClass.toSMul.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (AddMonoid.toZero.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (AddMonoid.toAddZeroClass.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u4, u2, u3, max u2 u4} (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u3, max u2 u4, max (max u3 u2) u4} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u3, max u2 u4, max (max u3 u2) u4} A A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u3, max u2 u4} A A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u4, u4, u3, u3} A (CommRing.toCommSemiring.{u2} A _inst_8) ι' ι' _inst_11 _inst_11 (fun (a : ι') (b : ι') => _inst_12 a b) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 b' b') f))
+ forall {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] {ι' : Type.{u4}} [_inst_11 : Fintype.{u4} ι'] [_inst_12 : DecidableEq.{succ u4} ι'] (tb : Trunc.{max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u1, u2, u3} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (b' : Basis.{u4, u2, u3} ι' A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.detAux.{u3, u1, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 tb) f) (Matrix.det.{u2, u4} ι' (fun (a : ι') (b : ι') => _inst_12 a b) _inst_11 A _inst_8 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u3, max (succ u2) (succ u4)} (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => Matrix.{u4, u4, u2} ι' ι' A) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u4, u2, u3, max u2 u4} (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (SMulZeroClass.toSMul.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (AddMonoid.toZero.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (AddMonoid.toAddZeroClass.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u4, u2, u3, max u2 u4} (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u3, max u2 u4, max (max u3 u2) u4} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u3, max u2 u4, max (max u3 u2) u4} A A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u3, max u2 u4} A A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u4, u4, u3, u3} A (CommRing.toCommSemiring.{u2} A _inst_8) ι' ι' _inst_11 _inst_11 (fun (a : ι') (b : ι') => _inst_12 a b) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 b' b') f))
Case conversion may be inaccurate. Consider using '#align linear_map.det_aux_def' LinearMap.detAux_def''ₓ'. -/
theorem detAux_def'' {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (tb : Trunc <| Basis ι A M)
(b' : Basis ι' A M) (f : M →ₗ[A] M) :
@@ -226,7 +226,7 @@ theorem detAux_def'' {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (tb : Trunc
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u3}} [_inst_8 : CommRing.{u3} A] [_inst_9 : Module.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : Trunc.{max (succ u2) (succ u3) (succ u1)} (Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)), Eq.{succ u3} A (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.detAux.{u1, u2, u3} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) (LinearMap.id.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (OfNat.ofNat.{u3} A 1 (OfNat.mk.{u3} A 1 (One.one.{u3} A (AddMonoidWithOne.toOne.{u3} A (AddGroupWithOne.toAddMonoidWithOne.{u3} A (AddCommGroupWithOne.toAddGroupWithOne.{u3} A (Ring.toAddCommGroupWithOne.{u3} A (CommRing.toRing.{u3} A _inst_8))))))))
but is expected to have type
- forall {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] (b : Trunc.{max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u1, u2, u3} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.detAux.{u3, u1, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) (LinearMap.id.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) _inst_8)))))
+ forall {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] (b : Trunc.{max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u1, u2, u3} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.detAux.{u3, u1, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) (LinearMap.id.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) _inst_8)))))
Case conversion may be inaccurate. Consider using '#align linear_map.det_aux_id LinearMap.detAux_idₓ'. -/
@[simp]
theorem detAux_id (b : Trunc <| Basis ι A M) : LinearMap.detAux b LinearMap.id = 1 :=
@@ -237,7 +237,7 @@ theorem detAux_id (b : Trunc <| Basis ι A M) : LinearMap.detAux b LinearMap.id
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u3}} [_inst_8 : CommRing.{u3} A] [_inst_9 : Module.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : Trunc.{max (succ u2) (succ u3) (succ u1)} (Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (f : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (g : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u3} A (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.detAux.{u1, u2, u3} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) (LinearMap.comp.{u3, u3, u3, u1, u1, u1} A A A M M M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) (RingHomCompTriple.right_ids.{u3, u3} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))))) f g)) (HMul.hMul.{u3, u3, u3} A A A (instHMul.{u3} A (Distrib.toHasMul.{u3} A (Ring.toDistrib.{u3} A (CommRing.toRing.{u3} A _inst_8)))) (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.detAux.{u1, u2, u3} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) f) (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.detAux.{u1, u2, u3} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) g))
but is expected to have type
- forall {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] (b : Trunc.{max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u1, u2, u3} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (f : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (g : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.comp.{u2, u2, u2, u3, u3, u3} A A A M M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) f g)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.detAux.{u3, u1, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) (LinearMap.comp.{u2, u2, u2, u3, u3, u3} A A A M M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) f g)) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) g) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (NonUnitalNonAssocRing.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (NonAssocRing.toNonUnitalNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) _inst_8))))) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.detAux.{u3, u1, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) f) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.detAux.{u3, u1, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) g))
+ forall {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] (b : Trunc.{max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u1, u2, u3} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (f : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (g : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.comp.{u2, u2, u2, u3, u3, u3} A A A M M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) f g)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.detAux.{u3, u1, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) (LinearMap.comp.{u2, u2, u2, u3, u3, u3} A A A M M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) f g)) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) g) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (NonUnitalNonAssocRing.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (NonAssocRing.toNonUnitalNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) _inst_8))))) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.detAux.{u3, u1, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) f) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.detAux.{u3, u1, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) g))
Case conversion may be inaccurate. Consider using '#align linear_map.det_aux_comp LinearMap.detAux_compₓ'. -/
@[simp]
theorem detAux_comp (b : Trunc <| Basis ι A M) (f g : M →ₗ[A] M) :
@@ -266,7 +266,7 @@ protected irreducible_def det : (M →ₗ[A] M) →* A :=
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_11 : DecidableEq.{succ u1} M], Eq.{max (succ u1) (succ u2)} ((LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9)) (dite.{max (succ u1) (succ u2)} ((LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (Exists.{succ u1} (Finset.{u1} M) (fun (s : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))) (Classical.propDecidable (Exists.{succ u1} (Finset.{u1} M) (fun (s : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (fun (H : Exists.{succ u1} (Finset.{u1} M) (fun (s : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))) => coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.detAux.{u1, u1, u2} M _inst_2 (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) (Exists.choose.{succ u1} (Finset.{u1} M) (fun (a : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) a) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) H)) (fun (a : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) (Exists.choose.{succ u1} (Finset.{u1} M) (fun (a : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) a) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) H)) (b : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) (Exists.choose.{succ u1} (Finset.{u1} M) (fun (a : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) a) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) H)) => Subtype.decidableEq.{u1} M (fun (x : M) => Membership.Mem.{u1, u1} M (Finset.{u1} M) (Finset.hasMem.{u1} M) x (Exists.choose.{succ u1} (Finset.{u1} M) (fun (a : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) a) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) H)) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u1} M (Exists.choose.{succ u1} (Finset.{u1} M) (fun (a : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) a) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) H)) A _inst_8 _inst_9 (Trunc.mk.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) (Exists.choose.{succ u1} (Finset.{u1} M) (fun (a : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) a) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) H)) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (Nonempty.some.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) (Exists.choose.{succ u1} (Finset.{u1} M) (fun (a : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) a) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) H)) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (Exists.choose_spec.{succ u1} (Finset.{u1} M) (fun (s : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) H))))) (fun (H : Not (Exists.{succ u1} (Finset.{u1} M) (fun (s : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) => OfNat.ofNat.{max u1 u2} ((LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) 1 (OfNat.mk.{max u1 u2} ((LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) 1 (One.one.{max u1 u2} ((LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (Pi.instOne.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (ᾰ : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (fun (i : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => AddMonoidWithOne.toOne.{u2} A (AddGroupWithOne.toAddMonoidWithOne.{u2} A (AddCommGroupWithOne.toAddGroupWithOne.{u2} A (Ring.toAddCommGroupWithOne.{u2} A (CommRing.toRing.{u2} A _inst_8))))))))))
but is expected to have type
- forall {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] [_inst_9 : Module.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] [_inst_11 : DecidableEq.{succ u2} M], Eq.{max (succ u2) (succ u1)} (forall (ᾰ : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9), (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.det.{u2, u1} M _inst_2 A _inst_8 _inst_9)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (a : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) a) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (dite.{max (succ u1) (succ u2)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Exists.{succ u2} (Finset.{u2} M) (fun (s : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))) (Classical.propDecidable (Exists.{succ u2} (Finset.{u2} M) (fun (s : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (fun (H : Exists.{succ u2} (Finset.{u2} M) (fun (s : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))) => LinearMap.detAux.{u2, u2, u1} M _inst_2 (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H))) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H))) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H))) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H)) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u2} M (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H)) A _inst_8 _inst_9 (Trunc.mk.{max (succ u1) (succ u2)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H))) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9) (Nonempty.some.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H))) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9) (Exists.choose_spec.{succ u2} (Finset.{u2} M) (fun (s : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H)))) (fun (H : Not (Exists.{succ u2} (Finset.{u2} M) (fun (s : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) => OfNat.ofNat.{max u2 u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) 1 (One.toOfNat1.{max u2 u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (instOneMonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))))))
+ forall {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] [_inst_9 : Module.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] [_inst_11 : DecidableEq.{succ u2} M], Eq.{max (succ u2) (succ u1)} (forall (ᾰ : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9), (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.det.{u2, u1} M _inst_2 A _inst_8 _inst_9)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (a : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) a) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (dite.{max (succ u1) (succ u2)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Exists.{succ u2} (Finset.{u2} M) (fun (s : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))) (Classical.propDecidable (Exists.{succ u2} (Finset.{u2} M) (fun (s : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (fun (H : Exists.{succ u2} (Finset.{u2} M) (fun (s : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))) => LinearMap.detAux.{u2, u2, u1} M _inst_2 (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H))) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H))) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H))) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H)) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u2} M (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H)) A _inst_8 _inst_9 (Trunc.mk.{max (succ u1) (succ u2)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H))) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9) (Nonempty.some.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H))) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9) (Exists.choose_spec.{succ u2} (Finset.{u2} M) (fun (s : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H)))) (fun (H : Not (Exists.{succ u2} (Finset.{u2} M) (fun (s : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) => OfNat.ofNat.{max u2 u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) 1 (One.toOfNat1.{max u2 u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (instOneMonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))))))
Case conversion may be inaccurate. Consider using '#align linear_map.coe_det LinearMap.coe_detₓ'. -/
theorem coe_det [DecidableEq M] :
⇑(LinearMap.det : (M →ₗ[A] M) →* A) =
@@ -288,7 +288,7 @@ end
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_11 : DecidableEq.{succ u1} M] {s : Finset.{u1} M} (b : Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} A (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f) (Matrix.det.{u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (fun (a : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (b : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) => Subtype.decidableEq.{u1} M (fun (x : M) => Membership.Mem.{u1, u1} M (Finset.{u1} M) (Finset.hasMem.{u1} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u1} M s) A _inst_8 (coeFn.{max (succ u1) (succ (max u1 u2)), max (succ u1) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u1, max u1 u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.toMatrix._proof_2.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u1, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.module.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u2, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u2, u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (fun (_x : LinearEquiv.{u2, u2, u1, max u1 u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.toMatrix._proof_2.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u1, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.module.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u2, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u2, u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) => (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A)) (LinearEquiv.hasCoeToFun.{u2, u2, u1, max u1 u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u1, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.module.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u2, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u2, u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.toMatrix._proof_2.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.toMatrix.{u2, u1, u1, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (Finset.Subtype.fintype.{u1} M s) (Finset.Subtype.fintype.{u1} M s) (fun (a : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (b : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) => Subtype.decidableEq.{u1} M (fun (x : M) => Membership.Mem.{u1, u1} M (Finset.{u1} M) (Finset.hasMem.{u1} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f))
but is expected to have type
- forall {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] [_inst_9 : Module.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] [_inst_11 : DecidableEq.{succ u2} M] {s : Finset.{u2} M} (b : Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9) (f : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) f) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.det.{u2, u1} M _inst_2 A _inst_8 _inst_9) f) (Matrix.det.{u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u2} M s) A _inst_8 (FunLike.coe.{max (succ u2) (succ u1), succ u2, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, u2, max u2 u1} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (SMulZeroClass.toSMul.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Module.toDistribMulAction.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, u2, max u2 u1} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u1, u2, max u2 u1, max u2 u1} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u2, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u2, max u2 u1} A A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.toMatrix.{u1, u2, u2, u2, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Finset.Subtype.fintype.{u2} M s) (Finset.Subtype.fintype.{u2} M s) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 b b) f))
+ forall {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] [_inst_9 : Module.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] [_inst_11 : DecidableEq.{succ u2} M] {s : Finset.{u2} M} (b : Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9) (f : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) f) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.det.{u2, u1} M _inst_2 A _inst_8 _inst_9) f) (Matrix.det.{u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u2} M s) A _inst_8 (FunLike.coe.{max (succ u2) (succ u1), succ u2, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, u2, max u2 u1} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (SMulZeroClass.toSMul.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Module.toDistribMulAction.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, u2, max u2 u1} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u1, u2, max u2 u1, max u2 u1} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u2, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u2, max u2 u1} A A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.toMatrix.{u1, u2, u2, u2, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Finset.Subtype.fintype.{u2} M s) (Finset.Subtype.fintype.{u2} M s) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 b b) f))
Case conversion may be inaccurate. Consider using '#align linear_map.det_eq_det_to_matrix_of_finset LinearMap.det_eq_det_toMatrix_of_finsetₓ'. -/
-- Auxiliary lemma, the `simp` normal form goes in the other direction
-- (using `linear_map.det_to_matrix`)
@@ -303,7 +303,7 @@ theorem det_eq_det_toMatrix_of_finset [DecidableEq M] {s : Finset M} (b : Basis
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u3}} [_inst_8 : CommRing.{u3} A] [_inst_9 : Module.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u3} A (Matrix.det.{u3, u2} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (coeFn.{max (succ u1) (succ (max u2 u3)), max (succ u1) (succ (max u2 u3))} (LinearEquiv.{u3, u3, u1, max u2 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (fun (_x : LinearEquiv.{u3, u3, u1, max u2 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) => (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> (Matrix.{u2, u2, u3} ι ι A)) (LinearEquiv.hasCoeToFun.{u3, u3, u1, max u2 u3} A A (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))) (LinearMap.toMatrix.{u3, u2, u2, u1, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f)) (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.det.{u1, u3} M _inst_2 A _inst_8 _inst_9) f)
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : Basis.{u3, u2, u1} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} A (Matrix.det.{u2, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => Matrix.{u3, u3, u2} ι ι A) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (SMulZeroClass.toSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toZero.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toAddZeroClass.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u1 u3) u2} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u1 u3) u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u3, u3, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f)
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : Basis.{u3, u2, u1} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} A (Matrix.det.{u2, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => Matrix.{u3, u3, u2} ι ι A) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (SMulZeroClass.toSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toZero.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toAddZeroClass.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u1 u3) u2} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u1 u3) u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u3, u3, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f)
Case conversion may be inaccurate. Consider using '#align linear_map.det_to_matrix LinearMap.det_toMatrixₓ'. -/
@[simp]
theorem det_toMatrix (b : Basis ι A M) (f : M →ₗ[A] M) : Matrix.det (toMatrix b b f) = f.det :=
@@ -316,7 +316,7 @@ theorem det_toMatrix (b : Basis ι A M) (f : M →ₗ[A] M) : Matrix.det (toMatr
lean 3 declaration is
forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {ι : Type.{u2}} [_inst_11 : Fintype.{u2} ι] [_inst_12 : DecidableEq.{succ u2} ι] (f : LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))), Eq.{succ u1} A (Matrix.det.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_12 a b) _inst_11 A _inst_8 (coeFn.{succ (max u2 u1), succ (max u2 u1)} (LinearEquiv.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_1.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.toMatrix'._proof_2.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_3.{u1, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι)) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (_x : LinearEquiv.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_1.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.toMatrix'._proof_2.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_3.{u1, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι)) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) -> (Matrix.{u2, u2, u1} ι ι A)) (LinearEquiv.hasCoeToFun.{u1, u1, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_3.{u1, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι)) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_1.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.toMatrix'._proof_2.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.toMatrix'.{u1, u2, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι ι _inst_11 (fun (a : ι) (b : ι) => _inst_12 a b)) f)) (coeFn.{max (succ u1) (succ (max u2 u1)), max (succ (max u2 u1)) (succ u1)} (MonoidHom.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u2 u1} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (fun (_x : MonoidHom.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u2 u1} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) => (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) -> A) (MonoidHom.hasCoeToFun.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u2 u1} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.det.{max u2 u1, u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A _inst_8 (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) f)
but is expected to have type
- forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {ι : Type.{u2}} [_inst_11 : Fintype.{u2} ι] [_inst_12 : DecidableEq.{succ u2} ι] (f : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))), Eq.{succ u1} A (Matrix.det.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_12 a b) _inst_11 A _inst_8 (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (_x : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => Matrix.{u2, u2, u1} ι ι A) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (SMulZeroClass.toSMul.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddMonoid.toZero.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddMonoid.toAddZeroClass.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Module.toDistribMulAction.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, max u2 u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.toMatrix'.{u1, u2, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι ι _inst_11 (fun (a : ι) (b : ι) => _inst_12 a b)) f)) (FunLike.coe.{max (succ u1) (succ (max u1 u2)), succ (max u1 u2), succ u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (_x : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => A) _x) (MulHomClass.toFunLike.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulOneClass.toMul.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.det.{max u1 u2, u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) A _inst_8 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) f)
+ forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {ι : Type.{u2}} [_inst_11 : Fintype.{u2} ι] [_inst_12 : DecidableEq.{succ u2} ι] (f : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))), Eq.{succ u1} A (Matrix.det.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_12 a b) _inst_11 A _inst_8 (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (_x : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => Matrix.{u2, u2, u1} ι ι A) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (SMulZeroClass.toSMul.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddMonoid.toZero.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddMonoid.toAddZeroClass.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Module.toDistribMulAction.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, max u2 u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.toMatrix'.{u1, u2, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι ι _inst_11 (fun (a : ι) (b : ι) => _inst_12 a b)) f)) (FunLike.coe.{max (succ u1) (succ (max u1 u2)), succ (max u1 u2), succ u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (_x : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => A) _x) (MulHomClass.toFunLike.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulOneClass.toMul.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.det.{max u1 u2, u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) A _inst_8 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) f)
Case conversion may be inaccurate. Consider using '#align linear_map.det_to_matrix' LinearMap.det_toMatrix'ₓ'. -/
@[simp]
theorem det_toMatrix' {ι : Type _} [Fintype ι] [DecidableEq ι] (f : (ι → A) →ₗ[A] ι → A) :
@@ -327,7 +327,7 @@ theorem det_toMatrix' {ι : Type _} [Fintype ι] [DecidableEq ι] (f : (ι → A
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (b : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (f : Matrix.{u3, u3, u1} ι ι R), Eq.{succ u1} R (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) (coeFn.{max (succ (max u3 u1)) (succ u2), max (succ (max u3 u1)) (succ u2)} (LinearEquiv.{u1, u1, max u3 u1, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.toLin._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.{u3, u3, u1} ι ι R) (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u1, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, u2, u2} R R M M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u3, u3, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u2} R R R M M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_3 (Matrix.toLin._proof_3.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3))) (fun (_x : LinearEquiv.{u1, u1, max u3 u1, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.toLin._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.{u3, u3, u1} ι ι R) (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u1, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, u2, u2} R R M M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u3, u3, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u2} R R R M M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_3 (Matrix.toLin._proof_3.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3))) => (Matrix.{u3, u3, u1} ι ι R) -> (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3)) (LinearEquiv.hasCoeToFun.{u1, u1, max u3 u1, u2} R R (Matrix.{u3, u3, u1} ι ι R) (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, u2, u2} R R M M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u3, u3, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u2} R R R M M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_3 (Matrix.toLin._proof_3.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.toLin._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.toLin.{u1, u3, u3, u2, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 b b) f)) (Matrix.det.{u1, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 f)
but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (f : Matrix.{u3, u3, u2} ι ι R), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (Matrix.{u3, u3, u2} ι ι R) (fun (a : Matrix.{u3, u3, u2} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Matrix.{u3, u3, u2} ι ι R) => LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) a) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, max u2 u3, u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (AddMonoid.toZero.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (SMulZeroClass.toSMul.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, max u2 u3, u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (SemilinearMapClass.distribMulActionHomClass.{u2, max u2 u3, u1, max (max u2 u1) u3} R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u2 u3, u1, max (max u2 u1) u3} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u2 u3, u1} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (Matrix.toLin.{u2, u3, u3, u1, u1} R (CommRing.toCommSemiring.{u2} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 b b) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (Matrix.{u3, u3, u2} ι ι R) (fun (_x : Matrix.{u3, u3, u2} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Matrix.{u3, u3, u2} ι ι R) => LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, max u2 u3, u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (AddMonoid.toZero.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (SMulZeroClass.toSMul.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, max u2 u3, u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (SemilinearMapClass.distribMulActionHomClass.{u2, max u2 u3, u1, max (max u2 u1) u3} R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u2 u3, u1, max (max u2 u1) u3} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u2 u3, u1} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (Matrix.toLin.{u2, u3, u3, u1, u1} R (CommRing.toCommSemiring.{u2} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 b b) f)) (Matrix.det.{u2, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 f)
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (f : Matrix.{u3, u3, u2} ι ι R), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (Matrix.{u3, u3, u2} ι ι R) (fun (a : Matrix.{u3, u3, u2} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Matrix.{u3, u3, u2} ι ι R) => LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) a) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, max u2 u3, u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (AddMonoid.toZero.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (SMulZeroClass.toSMul.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, max u2 u3, u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (SemilinearMapClass.distribMulActionHomClass.{u2, max u2 u3, u1, max (max u2 u1) u3} R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u2 u3, u1, max (max u2 u1) u3} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u2 u3, u1} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (Matrix.toLin.{u2, u3, u3, u1, u1} R (CommRing.toCommSemiring.{u2} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 b b) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (Matrix.{u3, u3, u2} ι ι R) (fun (_x : Matrix.{u3, u3, u2} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Matrix.{u3, u3, u2} ι ι R) => LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, max u2 u3, u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (AddMonoid.toZero.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (SMulZeroClass.toSMul.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, max u2 u3, u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (SemilinearMapClass.distribMulActionHomClass.{u2, max u2 u3, u1, max (max u2 u1) u3} R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u2 u3, u1, max (max u2 u1) u3} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u2 u3, u1} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (Matrix.toLin.{u2, u3, u3, u1, u1} R (CommRing.toCommSemiring.{u2} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 b b) f)) (Matrix.det.{u2, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 f)
Case conversion may be inaccurate. Consider using '#align linear_map.det_to_lin LinearMap.det_toLinₓ'. -/
@[simp]
theorem det_toLin (b : Basis ι R M) (f : Matrix ι ι R) :
@@ -339,7 +339,7 @@ theorem det_toLin (b : Basis ι R M) (f : Matrix ι ι R) :
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] (f : Matrix.{u2, u2, u1} ι ι R), Eq.{succ u1} R (coeFn.{max (succ u1) (succ (max u2 u1)), max (succ (max u2 u1)) (succ u1)} (MonoidHom.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u2 u1} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u2 u1} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) -> R) (MonoidHom.hasCoeToFun.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u2 u1} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{max u2 u1, u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) R _inst_1 (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (coeFn.{succ (max u2 u1), succ (max u2 u1)} (LinearEquiv.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.toLin'._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_3.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι))) (fun (_x : LinearEquiv.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.toLin'._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_3.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι))) => (Matrix.{u2, u2, u1} ι ι R) -> (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u1, u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_3.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.toLin'._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.toLin'.{u1, u2, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b)) f)) (Matrix.det.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 f)
but is expected to have type
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] (f : Matrix.{u2, u2, u1} ι ι R), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => R) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (Matrix.{u2, u2, u1} ι ι R) (fun (a : Matrix.{u2, u2, u1} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Matrix.{u2, u2, u1} ι ι R) => LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) a) (SMulHomClass.toFunLike.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toZero.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, max u2 u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (Matrix.toLin'.{u1, u2, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b)) f)) (FunLike.coe.{max (succ u1) (succ (max u1 u2)), succ (max u1 u2), succ u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (_x : LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => R) _x) (MulHomClass.toFunLike.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulOneClass.toMul.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulOneClass.toMul.{u1} R (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidHom.monoidHomClass.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (LinearMap.det.{max u1 u2, u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1))) R _inst_1 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (Matrix.{u2, u2, u1} ι ι R) (fun (_x : Matrix.{u2, u2, u1} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Matrix.{u2, u2, u1} ι ι R) => LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toZero.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, max u2 u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (Matrix.toLin'.{u1, u2, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b)) f)) (Matrix.det.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 f)
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] (f : Matrix.{u2, u2, u1} ι ι R), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => R) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (Matrix.{u2, u2, u1} ι ι R) (fun (a : Matrix.{u2, u2, u1} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Matrix.{u2, u2, u1} ι ι R) => LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) a) (SMulHomClass.toFunLike.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toZero.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, max u2 u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (Matrix.toLin'.{u1, u2, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b)) f)) (FunLike.coe.{max (succ u1) (succ (max u1 u2)), succ (max u1 u2), succ u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (_x : LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => R) _x) (MulHomClass.toFunLike.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulOneClass.toMul.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulOneClass.toMul.{u1} R (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidHom.monoidHomClass.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (LinearMap.det.{max u1 u2, u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1))) R _inst_1 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (Matrix.{u2, u2, u1} ι ι R) (fun (_x : Matrix.{u2, u2, u1} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Matrix.{u2, u2, u1} ι ι R) => LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toZero.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, max u2 u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (Matrix.toLin'.{u1, u2, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b)) f)) (Matrix.det.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 f)
Case conversion may be inaccurate. Consider using '#align linear_map.det_to_lin' LinearMap.det_toLin'ₓ'. -/
@[simp]
theorem det_toLin' (f : Matrix ι ι R) : LinearMap.det f.toLin' = f.det := by
@@ -350,7 +350,7 @@ theorem det_toLin' (f : Matrix ι ι R) : LinearMap.det f.toLin' = f.det := by
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_11 : DecidableEq.{succ u1} M] {P : A -> Prop} (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), (forall (s : Finset.{u1} M) (b : Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9), P (Matrix.det.{u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (fun (a : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (b : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) => Subtype.decidableEq.{u1} M (fun (x : M) => Membership.Mem.{u1, u1} M (Finset.{u1} M) (Finset.hasMem.{u1} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u1} M s) A _inst_8 (coeFn.{max (succ u1) (succ (max u1 u2)), max (succ u1) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u1, max u1 u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.toMatrix._proof_2.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u1, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.module.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u2, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u2, u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (fun (_x : LinearEquiv.{u2, u2, u1, max u1 u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.toMatrix._proof_2.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u1, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.module.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u2, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u2, u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) => (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A)) (LinearEquiv.hasCoeToFun.{u2, u2, u1, max u1 u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u1, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.module.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u2, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u2, u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.toMatrix._proof_2.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.toMatrix.{u2, u1, u1, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (Finset.Subtype.fintype.{u1} M s) (Finset.Subtype.fintype.{u1} M s) (fun (a : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (b : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) => Subtype.decidableEq.{u1} M (fun (x : M) => Membership.Mem.{u1, u1} M (Finset.{u1} M) (Finset.hasMem.{u1} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f))) -> (P (OfNat.ofNat.{u2} A 1 (OfNat.mk.{u2} A 1 (One.one.{u2} A (AddMonoidWithOne.toOne.{u2} A (AddGroupWithOne.toAddMonoidWithOne.{u2} A (AddCommGroupWithOne.toAddGroupWithOne.{u2} A (Ring.toAddCommGroupWithOne.{u2} A (CommRing.toRing.{u2} A _inst_8))))))))) -> (P (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f))
but is expected to have type
- forall {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] [_inst_9 : Module.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] [_inst_11 : DecidableEq.{succ u2} M] {P : A -> Prop} (f : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9), (forall (s : Finset.{u2} M) (b : Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9), P (Matrix.det.{u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u2} M s) A _inst_8 (FunLike.coe.{max (succ u2) (succ u1), succ u2, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, u2, max u2 u1} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (SMulZeroClass.toSMul.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Module.toDistribMulAction.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, u2, max u2 u1} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u1, u2, max u2 u1, max u2 u1} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u2, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u2, max u2 u1} A A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.toMatrix.{u1, u2, u2, u2, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Finset.Subtype.fintype.{u2} M s) (Finset.Subtype.fintype.{u2} M s) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 b b) f))) -> (P (OfNat.ofNat.{u1} A 1 (One.toOfNat1.{u1} A (Semiring.toOne.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) -> (P (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.det.{u2, u1} M _inst_2 A _inst_8 _inst_9) f))
+ forall {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] [_inst_9 : Module.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] [_inst_11 : DecidableEq.{succ u2} M] {P : A -> Prop} (f : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9), (forall (s : Finset.{u2} M) (b : Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9), P (Matrix.det.{u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u2} M s) A _inst_8 (FunLike.coe.{max (succ u2) (succ u1), succ u2, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, u2, max u2 u1} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (SMulZeroClass.toSMul.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Module.toDistribMulAction.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, u2, max u2 u1} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u1, u2, max u2 u1, max u2 u1} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u2, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u2, max u2 u1} A A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.toMatrix.{u1, u2, u2, u2, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Finset.Subtype.fintype.{u2} M s) (Finset.Subtype.fintype.{u2} M s) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 b b) f))) -> (P (OfNat.ofNat.{u1} A 1 (One.toOfNat1.{u1} A (Semiring.toOne.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) -> (P (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.det.{u2, u1} M _inst_2 A _inst_8 _inst_9) f))
Case conversion may be inaccurate. Consider using '#align linear_map.det_cases LinearMap.det_casesₓ'. -/
/-- To show `P f.det` it suffices to consider `P (to_matrix _ _ f).det` and `P 1`. -/
@[elab_as_elim]
@@ -368,7 +368,7 @@ theorem det_cases [DecidableEq M] {P : A → Prop} (f : M →ₗ[A] M)
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (g : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} A (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearMap.comp.{u2, u2, u2, u1, u1, u1} A A A M M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomCompTriple.right_ids.{u2, u2} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))) f g)) (HMul.hMul.{u2, u2, u2} A A A (instHMul.{u2} A (Distrib.toHasMul.{u2} A (Ring.toDistrib.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) g))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (g : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.comp.{u2, u2, u2, u1, u1, u1} A A A M M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) f g)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearMap.comp.{u2, u2, u2, u1, u1, u1} A A A M M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) f g)) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) g) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (NonUnitalNonAssocRing.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (NonAssocRing.toNonUnitalNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) _inst_8))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) g))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (g : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.comp.{u2, u2, u2, u1, u1, u1} A A A M M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) f g)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearMap.comp.{u2, u2, u2, u1, u1, u1} A A A M M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) f g)) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) g) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (NonUnitalNonAssocRing.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (NonAssocRing.toNonUnitalNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) _inst_8))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) g))
Case conversion may be inaccurate. Consider using '#align linear_map.det_comp LinearMap.det_compₓ'. -/
@[simp]
theorem det_comp (f g : M →ₗ[A] M) : (f.comp g).det = f.det * g.det :=
@@ -379,7 +379,7 @@ theorem det_comp (f g : M →ₗ[A] M) : (f.comp g).det = f.det * g.det :=
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)], Eq.{succ u2} A (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearMap.id.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (OfNat.ofNat.{u2} A 1 (OfNat.mk.{u2} A 1 (One.one.{u2} A (AddMonoidWithOne.toOne.{u2} A (AddGroupWithOne.toAddMonoidWithOne.{u2} A (AddCommGroupWithOne.toAddGroupWithOne.{u2} A (Ring.toAddCommGroupWithOne.{u2} A (CommRing.toRing.{u2} A _inst_8))))))))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)], Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearMap.id.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) _inst_8)))))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)], Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearMap.id.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) _inst_8)))))
Case conversion may be inaccurate. Consider using '#align linear_map.det_id LinearMap.det_idₓ'. -/
@[simp]
theorem det_id : (LinearMap.id : M →ₗ[A] M).det = 1 :=
@@ -390,7 +390,7 @@ theorem det_id : (LinearMap.id : M →ₗ[A] M).det = 1 :=
lean 3 declaration is
forall {𝕜 : Type.{u1}} [_inst_11 : Field.{u1} 𝕜] {M : Type.{u2}} [_inst_12 : AddCommGroup.{u2} M] [_inst_13 : Module.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12)] (c : 𝕜) (f : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13), Eq.{succ u1} 𝕜 (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) => (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) -> 𝕜) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) (LinearMap.det.{u2, u1} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)) _inst_13) (SMul.smul.{u1, u2} 𝕜 (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (LinearMap.hasSmul.{u1, u1, u1, u2, u2} 𝕜 𝕜 𝕜 M M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13 (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) (Ring.toMonoid.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (Module.toDistribMulAction.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13) (smulCommClass_self.{u1, u2} 𝕜 M (CommRing.toCommMonoid.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11))) (MulActionWithZero.toMulAction.{u1, u2} 𝕜 M (Semiring.toMonoidWithZero.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11)))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12)))) (Module.toMulActionWithZero.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13)))) c f)) (HMul.hMul.{u1, u1, u1} 𝕜 𝕜 𝕜 (instHMul.{u1} 𝕜 (Distrib.toHasMul.{u1} 𝕜 (Ring.toDistrib.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))) (HPow.hPow.{u1, 0, u1} 𝕜 Nat 𝕜 (instHPow.{u1, 0} 𝕜 Nat (Monoid.Pow.{u1} 𝕜 (Ring.toMonoid.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))) c (FiniteDimensional.finrank.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) _inst_12 _inst_13)) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) => (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) -> 𝕜) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) (LinearMap.det.{u2, u1} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)) _inst_13) f))
but is expected to have type
- forall {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] {M : Type.{u1}} [_inst_12 : AddCommGroup.{u1} M] [_inst_13 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12)] (c : 𝕜) (f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) (HSMul.hSMul.{u2, u1, u1} 𝕜 (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (instHSMul.{u2, u1} 𝕜 (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.instSMulLinearMap.{u2, u2, u2, u1, u1} 𝕜 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) (MonoidWithZero.toMonoid.{u2} 𝕜 (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) (Module.toDistribMulAction.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13) (smulCommClass_self.{u2, u1} 𝕜 M (CommRing.toCommMonoid.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))) (MulActionWithZero.toMulAction.{u2, u1} 𝕜 M (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_12))))) (Module.toMulActionWithZero.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13))))) c f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_13) (HSMul.hSMul.{u2, u1, u1} 𝕜 (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (instHSMul.{u2, u1} 𝕜 (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.instSMulLinearMap.{u2, u2, u2, u1, u1} 𝕜 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) (MonoidWithZero.toMonoid.{u2} 𝕜 (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) (Module.toDistribMulAction.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13) (smulCommClass_self.{u2, u1} 𝕜 M (CommRing.toCommMonoid.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))) (MulActionWithZero.toMulAction.{u2, u1} 𝕜 M (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_12))))) (Module.toMulActionWithZero.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13))))) c f)) (HMul.hMul.{u2, u2, u2} 𝕜 ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) 𝕜 (instHMul.{u2} 𝕜 (NonUnitalNonAssocRing.toMul.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11)))))) (HPow.hPow.{u2, 0, u2} 𝕜 Nat 𝕜 (instHPow.{u2, 0} 𝕜 Nat (Monoid.Pow.{u2} 𝕜 (MonoidWithZero.toMonoid.{u2} 𝕜 (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))))) c (FiniteDimensional.finrank.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) _inst_12 _inst_13)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_13) f))
+ forall {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] {M : Type.{u1}} [_inst_12 : AddCommGroup.{u1} M] [_inst_13 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12)] (c : 𝕜) (f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) (HSMul.hSMul.{u2, u1, u1} 𝕜 (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (instHSMul.{u2, u1} 𝕜 (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.instSMulLinearMap.{u2, u2, u2, u1, u1} 𝕜 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) (MonoidWithZero.toMonoid.{u2} 𝕜 (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) (Module.toDistribMulAction.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13) (smulCommClass_self.{u2, u1} 𝕜 M (CommRing.toCommMonoid.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))) (MulActionWithZero.toMulAction.{u2, u1} 𝕜 M (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_12))))) (Module.toMulActionWithZero.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13))))) c f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_13) (HSMul.hSMul.{u2, u1, u1} 𝕜 (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (instHSMul.{u2, u1} 𝕜 (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.instSMulLinearMap.{u2, u2, u2, u1, u1} 𝕜 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) (MonoidWithZero.toMonoid.{u2} 𝕜 (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) (Module.toDistribMulAction.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13) (smulCommClass_self.{u2, u1} 𝕜 M (CommRing.toCommMonoid.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))) (MulActionWithZero.toMulAction.{u2, u1} 𝕜 M (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_12))))) (Module.toMulActionWithZero.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13))))) c f)) (HMul.hMul.{u2, u2, u2} 𝕜 ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) 𝕜 (instHMul.{u2} 𝕜 (NonUnitalNonAssocRing.toMul.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11)))))) (HPow.hPow.{u2, 0, u2} 𝕜 Nat 𝕜 (instHPow.{u2, 0} 𝕜 Nat (Monoid.Pow.{u2} 𝕜 (MonoidWithZero.toMonoid.{u2} 𝕜 (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))))) c (FiniteDimensional.finrank.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) _inst_12 _inst_13)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_13) f))
Case conversion may be inaccurate. Consider using '#align linear_map.det_smul LinearMap.det_smulₓ'. -/
/-- Multiplying a map by a scalar `c` multiplies its determinant by `c ^ dim M`. -/
@[simp]
@@ -413,7 +413,7 @@ theorem det_smul {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCommGroup M] [Mod
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_11 : Finite.{succ u3} ι] [_inst_12 : Nonempty.{succ u3} ι], (Basis.{u3, u2, u1} ι A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) -> (Eq.{succ u2} A (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (OfNat.mk.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.zero.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.hasZero.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))))))) (OfNat.ofNat.{u2} A 0 (OfNat.mk.{u2} A 0 (Zero.zero.{u2} A (MulZeroClass.toHasZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))))))))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_11 : Finite.{succ u3} ι] [_inst_12 : Nonempty.{succ u3} ι], (Basis.{u3, u2, u1} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) -> (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (CommMonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (CommSemiring.toCommMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) _inst_8))))))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_11 : Finite.{succ u3} ι] [_inst_12 : Nonempty.{succ u3} ι], (Basis.{u3, u2, u1} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) -> (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (CommMonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (CommSemiring.toCommMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) _inst_8))))))
Case conversion may be inaccurate. Consider using '#align linear_map.det_zero' LinearMap.det_zero'ₓ'. -/
theorem det_zero' {ι : Type _} [Finite ι] [Nonempty ι] (b : Basis ι A M) :
LinearMap.det (0 : M →ₗ[A] M) = 0 :=
@@ -427,7 +427,7 @@ theorem det_zero' {ι : Type _} [Finite ι] [Nonempty ι] (b : Basis ι A M) :
lean 3 declaration is
forall {𝕜 : Type.{u1}} [_inst_11 : Field.{u1} 𝕜] {M : Type.{u2}} [_inst_12 : AddCommGroup.{u2} M] [_inst_13 : Module.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12)], Eq.{succ u1} 𝕜 (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) => (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) -> 𝕜) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) (LinearMap.det.{u2, u1} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)) _inst_13) (OfNat.ofNat.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 0 (OfNat.mk.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 0 (Zero.zero.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (LinearMap.hasZero.{u1, u1, u2, u2} 𝕜 𝕜 M M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13 (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11)))))))))) (HPow.hPow.{u1, 0, u1} 𝕜 Nat 𝕜 (instHPow.{u1, 0} 𝕜 Nat (Monoid.Pow.{u1} 𝕜 (Ring.toMonoid.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))) (OfNat.ofNat.{u1} 𝕜 0 (OfNat.mk.{u1} 𝕜 0 (Zero.zero.{u1} 𝕜 (MulZeroClass.toHasZero.{u1} 𝕜 (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} 𝕜 (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11)))))))))) (FiniteDimensional.finrank.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) _inst_12 _inst_13))
but is expected to have type
- forall {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] {M : Type.{u1}} [_inst_12 : AddCommGroup.{u1} M] [_inst_13 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12)], Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_13) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))))))) (HPow.hPow.{u2, 0, u2} 𝕜 Nat 𝕜 (instHPow.{u2, 0} 𝕜 Nat (Monoid.Pow.{u2} 𝕜 (MonoidWithZero.toMonoid.{u2} 𝕜 (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))))) (OfNat.ofNat.{u2} 𝕜 0 (Zero.toOfNat0.{u2} 𝕜 (CommMonoidWithZero.toZero.{u2} 𝕜 (CommGroupWithZero.toCommMonoidWithZero.{u2} 𝕜 (Semifield.toCommGroupWithZero.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))))) (FiniteDimensional.finrank.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) _inst_12 _inst_13))
+ forall {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] {M : Type.{u1}} [_inst_12 : AddCommGroup.{u1} M] [_inst_13 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12)], Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_13) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))))))) (HPow.hPow.{u2, 0, u2} 𝕜 Nat 𝕜 (instHPow.{u2, 0} 𝕜 Nat (Monoid.Pow.{u2} 𝕜 (MonoidWithZero.toMonoid.{u2} 𝕜 (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))))) (OfNat.ofNat.{u2} 𝕜 0 (Zero.toOfNat0.{u2} 𝕜 (CommMonoidWithZero.toZero.{u2} 𝕜 (CommGroupWithZero.toCommMonoidWithZero.{u2} 𝕜 (Semifield.toCommGroupWithZero.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))))) (FiniteDimensional.finrank.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) _inst_12 _inst_13))
Case conversion may be inaccurate. Consider using '#align linear_map.det_zero LinearMap.det_zeroₓ'. -/
/-- In a finite-dimensional vector space, the zero map has determinant `1` in dimension `0`,
and `0` otherwise. We give a formula that also works in infinite dimension, where we define
@@ -442,7 +442,7 @@ theorem det_zero {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCommGroup M] [Mod
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] [_inst_11 : Subsingleton.{succ u2} M] (f : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3), Eq.{succ u1} R (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) f) (OfNat.ofNat.{u1} R 1 (OfNat.mk.{u1} R 1 (One.one.{u1} R (AddMonoidWithOne.toOne.{u1} R (AddGroupWithOne.toAddMonoidWithOne.{u1} R (AddCommGroupWithOne.toAddGroupWithOne.{u1} R (Ring.toAddCommGroupWithOne.{u1} R (CommRing.toRing.{u1} R _inst_1))))))))
but is expected to have type
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] [_inst_11 : Subsingleton.{succ u2} M] (f : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u1} R (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) f) (OfNat.ofNat.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) 1 (One.toOfNat1.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) (Semiring.toOne.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) (CommSemiring.toSemiring.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) (CommRing.toCommSemiring.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) _inst_1)))))
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] [_inst_11 : Subsingleton.{succ u2} M] (f : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u1} R (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) f) (OfNat.ofNat.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) 1 (One.toOfNat1.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) (Semiring.toOne.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) (CommSemiring.toSemiring.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) (CommRing.toCommSemiring.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) _inst_1)))))
Case conversion may be inaccurate. Consider using '#align linear_map.det_eq_one_of_subsingleton LinearMap.det_eq_one_of_subsingletonₓ'. -/
theorem det_eq_one_of_subsingleton [Subsingleton M] (f : M →ₗ[R] M) : (f : M →ₗ[R] M).det = 1 :=
by
@@ -455,7 +455,7 @@ theorem det_eq_one_of_subsingleton [Subsingleton M] (f : M →ₗ[R] M) : (f : M
lean 3 declaration is
forall {𝕜 : Type.{u1}} [_inst_11 : Field.{u1} 𝕜] {M : Type.{u2}} [_inst_12 : AddCommGroup.{u2} M] [_inst_13 : Module.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12)], (Eq.{1} Nat (FiniteDimensional.finrank.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) _inst_12 _inst_13) (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero)))) -> (forall (f : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13), Eq.{succ u1} 𝕜 (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) => (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) -> 𝕜) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) (LinearMap.det.{u2, u1} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)) _inst_13) f) (OfNat.ofNat.{u1} 𝕜 1 (OfNat.mk.{u1} 𝕜 1 (One.one.{u1} 𝕜 (AddMonoidWithOne.toOne.{u1} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u1} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u1} 𝕜 (Ring.toAddCommGroupWithOne.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))))))))
but is expected to have type
- forall {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] {M : Type.{u1}} [_inst_12 : AddCommGroup.{u1} M] [_inst_13 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12)], (Eq.{1} Nat (FiniteDimensional.finrank.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) _inst_12 _inst_13) (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))) -> (forall (f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_13) f) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) (DivisionSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) (Semifield.toDivisionSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) (Field.toSemifield.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) _inst_11)))))))
+ forall {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] {M : Type.{u1}} [_inst_12 : AddCommGroup.{u1} M] [_inst_13 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12)], (Eq.{1} Nat (FiniteDimensional.finrank.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) _inst_12 _inst_13) (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))) -> (forall (f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_13) f) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) (DivisionSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) (Semifield.toDivisionSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) (Field.toSemifield.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) _inst_11)))))))
Case conversion may be inaccurate. Consider using '#align linear_map.det_eq_one_of_finrank_eq_zero LinearMap.det_eq_one_of_finrank_eq_zeroₓ'. -/
theorem det_eq_one_of_finrank_eq_zero {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCommGroup M]
[Module 𝕜 M] (h : FiniteDimensional.finrank 𝕜 M = 0) (f : M →ₗ[𝕜] M) :
@@ -473,7 +473,7 @@ theorem det_eq_one_of_finrank_eq_zero {𝕜 : Type _} [Field 𝕜] {M : Type _}
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {N : Type.{u3}} [_inst_11 : AddCommGroup.{u3} N] [_inst_12 : Module.{u2, u3} A N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11)] (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (e : LinearEquiv.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12), Eq.{succ u2} A (coeFn.{max (succ u2) (succ u3), max (succ u3) (succ u2)} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.ring.{u2, u3} A N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_11 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.ring.{u2, u3} A N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_11 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) -> A) (MonoidHom.hasCoeToFun.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.ring.{u2, u3} A N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_11 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u3, u2} N _inst_11 A _inst_8 _inst_12) (LinearMap.comp.{u2, u2, u2, u3, u1, u3} A A A N M N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_9 _inst_12 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))) ((fun (a : Sort.{max (succ u1) (succ u3)}) (b : Sort.{max (succ u1) (succ u3)}) [self : HasLiftT.{max (succ u1) (succ u3), max (succ u1) (succ u3)} a b] => self.0) (LinearEquiv.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12) (LinearMap.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12) (HasLiftT.mk.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (LinearEquiv.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12) (LinearMap.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12) (CoeTCₓ.coe.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (LinearEquiv.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12) (LinearMap.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12) (coeBase.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (LinearEquiv.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12) (LinearMap.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u1, u3} A A M N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))))) e) (LinearMap.comp.{u2, u2, u2, u3, u1, u1} A A A N M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))) f ((fun (a : Sort.{max (succ u3) (succ u1)}) (b : Sort.{max (succ u3) (succ u1)}) [self : HasLiftT.{max (succ u3) (succ u1), max (succ u3) (succ u1)} a b] => self.0) (LinearEquiv.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9) (LinearMap.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9) (HasLiftT.mk.{max (succ u3) (succ u1), max (succ u3) (succ u1)} (LinearEquiv.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9) (LinearMap.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9) (CoeTCₓ.coe.{max (succ u3) (succ u1), max (succ u3) (succ u1)} (LinearEquiv.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9) (LinearMap.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9) (coeBase.{max (succ u3) (succ u1), max (succ u3) (succ u1)} (LinearEquiv.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9) (LinearMap.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u3, u1} A A N M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))))) (LinearEquiv.symm.{u2, u2, u1, u3} A A M N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) e))))) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f)
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {N : Type.{u3}} [_inst_11 : AddCommGroup.{u3} N] [_inst_12 : Module.{u2, u3} A N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11)] (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (e : LinearEquiv.{u2, u2, u1, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) => A) (LinearMap.comp.{u2, u2, u2, u3, u1, u3} A A A N M N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_9 _inst_12 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearEquiv.toLinearMap.{u2, u2, u1, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12 e) (LinearMap.comp.{u2, u2, u2, u3, u1, u1} A A A N M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) f (LinearEquiv.toLinearMap.{u2, u2, u3, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u3} A A M N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) e))))) (FunLike.coe.{max (succ u2) (succ u3), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.semiring.{u2, u3} A N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) => A) _x) (MulHomClass.toFunLike.{max u2 u3, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.semiring.{u2, u3} A N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.semiring.{u2, u3} A N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u3, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.semiring.{u2, u3} A N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.semiring.{u2, u3} A N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.semiring.{u2, u3} A N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u3, u2} N _inst_11 A _inst_8 _inst_12) (LinearMap.comp.{u2, u2, u2, u3, u1, u3} A A A N M N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_9 _inst_12 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearEquiv.toLinearMap.{u2, u2, u1, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12 e) (LinearMap.comp.{u2, u2, u2, u3, u1, u1} A A A N M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) f (LinearEquiv.toLinearMap.{u2, u2, u3, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u3} A A M N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) e))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f)
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {N : Type.{u3}} [_inst_11 : AddCommGroup.{u3} N] [_inst_12 : Module.{u2, u3} A N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11)] (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (e : LinearEquiv.{u2, u2, u1, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) => A) (LinearMap.comp.{u2, u2, u2, u3, u1, u3} A A A N M N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_9 _inst_12 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearEquiv.toLinearMap.{u2, u2, u1, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12 e) (LinearMap.comp.{u2, u2, u2, u3, u1, u1} A A A N M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) f (LinearEquiv.toLinearMap.{u2, u2, u3, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u3} A A M N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) e))))) (FunLike.coe.{max (succ u2) (succ u3), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.semiring.{u2, u3} A N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) => A) _x) (MulHomClass.toFunLike.{max u2 u3, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.semiring.{u2, u3} A N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.semiring.{u2, u3} A N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u3, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.semiring.{u2, u3} A N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.semiring.{u2, u3} A N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.semiring.{u2, u3} A N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u3, u2} N _inst_11 A _inst_8 _inst_12) (LinearMap.comp.{u2, u2, u2, u3, u1, u3} A A A N M N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_9 _inst_12 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearEquiv.toLinearMap.{u2, u2, u1, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12 e) (LinearMap.comp.{u2, u2, u2, u3, u1, u1} A A A N M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) f (LinearEquiv.toLinearMap.{u2, u2, u3, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u3} A A M N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) e))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f)
Case conversion may be inaccurate. Consider using '#align linear_map.det_conj LinearMap.det_conjₓ'. -/
/-- Conjugating a linear map by a linear equiv does not change its determinant. -/
@[simp]
@@ -502,7 +502,7 @@ theorem det_conj {N : Type _} [AddCommGroup N] [Module A N] (f : M →ₗ[A] M)
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_11 : CommRing.{u2} A] [_inst_12 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12), (IsUnit.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.monoid.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) f) -> (IsUnit.{u2} A (Ring.toMonoid.{u2} A (CommRing.toRing.{u2} A _inst_11)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_11 _inst_12) f))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_11 : CommRing.{u2} A] [_inst_12 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12), (IsUnit.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.monoid.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) f) -> (IsUnit.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) f) (MonoidWithZero.toMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) f) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) f) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) f) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) f) _inst_11)))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_11 _inst_12) f))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_11 : CommRing.{u2} A] [_inst_12 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12), (IsUnit.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.monoid.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) f) -> (IsUnit.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) f) (MonoidWithZero.toMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) f) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) f) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) f) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) f) _inst_11)))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_11 _inst_12) f))
Case conversion may be inaccurate. Consider using '#align linear_map.is_unit_det LinearMap.isUnit_detₓ'. -/
/-- If a linear map is invertible, so is its determinant. -/
theorem isUnit_det {A : Type _} [CommRing A] [Module A M] (f : M →ₗ[A] M) (hf : IsUnit f) :
@@ -517,7 +517,7 @@ theorem isUnit_det {A : Type _} [CommRing A] [Module A M] (f : M →ₗ[A] M) (h
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12), (Ne.{succ u2} 𝕜 (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) => (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) -> 𝕜) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} 𝕜 1 (OfNat.mk.{u2} 𝕜 1 (One.one.{u2} 𝕜 (AddMonoidWithOne.toOne.{u2} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u2} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u2} 𝕜 (Ring.toAddCommGroupWithOne.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11)))))))))) -> (FiniteDimensional.{u2, u1} 𝕜 M (Field.toDivisionRing.{u2} 𝕜 _inst_11) _inst_2 _inst_12)
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12), (Ne.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (DivisionSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Semifield.toDivisionSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Field.toSemifield.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) _inst_11))))))) -> (FiniteDimensional.{u2, u1} 𝕜 M (Field.toDivisionRing.{u2} 𝕜 _inst_11) _inst_2 _inst_12)
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12), (Ne.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (DivisionSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Semifield.toDivisionSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Field.toSemifield.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) _inst_11))))))) -> (FiniteDimensional.{u2, u1} 𝕜 M (Field.toDivisionRing.{u2} 𝕜 _inst_11) _inst_2 _inst_12)
Case conversion may be inaccurate. Consider using '#align linear_map.finite_dimensional_of_det_ne_one LinearMap.finiteDimensional_of_det_ne_oneₓ'. -/
/-- If a linear map has determinant different from `1`, then the space is finite-dimensional. -/
theorem finiteDimensional_of_det_ne_one {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] (f : M →ₗ[𝕜] M)
@@ -536,7 +536,7 @@ theorem finiteDimensional_of_det_ne_one {𝕜 : Type _} [Field 𝕜] [Module
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12}, (Eq.{succ u2} 𝕜 (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) => (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) -> 𝕜) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} 𝕜 0 (OfNat.mk.{u2} 𝕜 0 (Zero.zero.{u2} 𝕜 (MulZeroClass.toHasZero.{u2} 𝕜 (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} 𝕜 (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))))))))) -> (LT.lt.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Preorder.toHasLt.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteSemilatticeInf.toPartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteLattice.toCompleteSemilatticeInf.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.completeLattice.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (LinearMap.range.{u2, u2, u1, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (LinearMap.semilinearMapClass.{u2, u2, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11)))))) (RingHomSurjective.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11)))) f) (Top.top.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.hasTop.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12}, (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommMonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommGroupWithZero.toCommMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Semifield.toCommGroupWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Field.toSemifield.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) _inst_11))))))) -> (LT.lt.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Preorder.toLT.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.completeLattice.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (LinearMap.range.{u2, u2, u1, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (LinearMap.semilinearMapClass.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))))) (RingHomSurjective.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))) f) (Top.top.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.instTopSubmodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12}, (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommMonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommGroupWithZero.toCommMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Semifield.toCommGroupWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Field.toSemifield.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) _inst_11))))))) -> (LT.lt.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Preorder.toLT.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.completeLattice.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (LinearMap.range.{u2, u2, u1, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (LinearMap.semilinearMapClass.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))))) (RingHomSurjective.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))) f) (Top.top.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.instTopSubmodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))
Case conversion may be inaccurate. Consider using '#align linear_map.range_lt_top_of_det_eq_zero LinearMap.range_lt_top_of_det_eq_zeroₓ'. -/
/-- If the determinant of a map vanishes, then the map is not onto. -/
theorem range_lt_top_of_det_eq_zero {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] {f : M →ₗ[𝕜] M}
@@ -552,7 +552,7 @@ theorem range_lt_top_of_det_eq_zero {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M]
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12}, (Eq.{succ u2} 𝕜 (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) => (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) -> 𝕜) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} 𝕜 0 (OfNat.mk.{u2} 𝕜 0 (Zero.zero.{u2} 𝕜 (MulZeroClass.toHasZero.{u2} 𝕜 (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} 𝕜 (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))))))))) -> (LT.lt.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Preorder.toHasLt.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteSemilatticeInf.toPartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteLattice.toCompleteSemilatticeInf.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.completeLattice.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (Bot.bot.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.hasBot.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)) (LinearMap.ker.{u2, u2, u1, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (LinearMap.semilinearMapClass.{u2, u2, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11)))))) f))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12}, (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommMonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommGroupWithZero.toCommMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Semifield.toCommGroupWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Field.toSemifield.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) _inst_11))))))) -> (LT.lt.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Preorder.toLT.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.completeLattice.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (Bot.bot.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.instBotSubmodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)) (LinearMap.ker.{u2, u2, u1, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (LinearMap.semilinearMapClass.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))))) f))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12}, (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommMonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommGroupWithZero.toCommMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Semifield.toCommGroupWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Field.toSemifield.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) _inst_11))))))) -> (LT.lt.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Preorder.toLT.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.completeLattice.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (Bot.bot.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.instBotSubmodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)) (LinearMap.ker.{u2, u2, u1, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (LinearMap.semilinearMapClass.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))))) f))
Case conversion may be inaccurate. Consider using '#align linear_map.bot_lt_ker_of_det_eq_zero LinearMap.bot_lt_ker_of_det_eq_zeroₓ'. -/
/-- If the determinant of a map vanishes, then the map is not injective. -/
theorem bot_lt_ker_of_det_eq_zero {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] {f : M →ₗ[𝕜] M}
@@ -584,7 +584,7 @@ protected def det : (M ≃ₗ[R] M) →* Rˣ :=
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (f : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3), Eq.{succ u1} R ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (HasLiftT.mk.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (CoeTCₓ.coe.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (coeBase.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (Units.hasCoe.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) f)) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (HasLiftT.mk.{succ u2, succ u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (CoeTCₓ.coe.{succ u2, succ u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (coeBase.{succ u2, succ u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.LinearMap.hasCoe.{u1, u1, u2, u2} R R M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))))) f))
but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 f)) (Units.val.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 f))
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 f)) (Units.val.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 f))
Case conversion may be inaccurate. Consider using '#align linear_equiv.coe_det LinearEquiv.coe_detₓ'. -/
@[simp]
theorem coe_det (f : M ≃ₗ[R] M) : ↑f.det = LinearMap.det (f : M →ₗ[R] M) :=
@@ -595,7 +595,7 @@ theorem coe_det (f : M ≃ₗ[R] M) : ↑f.det = LinearMap.det (f : M →ₗ[R]
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (f : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3), Eq.{succ u1} R ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (HasLiftT.mk.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (CoeTCₓ.coe.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (coeBase.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (Units.hasCoe.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Inv.inv.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Units.hasInv.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) f))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (HasLiftT.mk.{succ u2, succ u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (CoeTCₓ.coe.{succ u2, succ u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (coeBase.{succ u2, succ u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.LinearMap.hasCoe.{u1, u1, u2, u2} R R M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))))) (LinearEquiv.symm.{u1, u1, u2, u2} R R M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) f)))
but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (LinearEquiv.symm.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) f))) (Units.val.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (Inv.inv.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f) (Units.instInv.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) f))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (LinearEquiv.symm.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) f)))
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (LinearEquiv.symm.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) f))) (Units.val.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (Inv.inv.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f) (Units.instInv.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) f))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (LinearEquiv.symm.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) f)))
Case conversion may be inaccurate. Consider using '#align linear_equiv.coe_inv_det LinearEquiv.coe_inv_detₓ'. -/
@[simp]
theorem coe_inv_det (f : M ≃ₗ[R] M) : ↑f.det⁻¹ = LinearMap.det (f.symm : M →ₗ[R] M) :=
@@ -606,7 +606,7 @@ theorem coe_inv_det (f : M ≃ₗ[R] M) : ↑f.det⁻¹ = LinearMap.det (f.symm
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)], Eq.{succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) (LinearEquiv.refl.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) (OfNat.ofNat.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) 1 (OfNat.mk.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) 1 (One.one.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (MulOneClass.toHasOne.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))))))
but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)], Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (InvOneClass.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (DivInvOneMonoid.toInvOneClass.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (DivisionMonoid.toDivInvOneMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (DivisionCommMonoid.toDivisionMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (CommGroup.toDivisionCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (Units.instCommGroupUnitsToMonoid.{u2} R (CommRing.toCommMonoid.{u2} R _inst_1)))))))))
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)], Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (InvOneClass.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (DivInvOneMonoid.toInvOneClass.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (DivisionMonoid.toDivInvOneMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (DivisionCommMonoid.toDivisionMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (CommGroup.toDivisionCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (Units.instCommGroupUnitsToMonoid.{u2} R (CommRing.toCommMonoid.{u2} R _inst_1)))))))))
Case conversion may be inaccurate. Consider using '#align linear_equiv.det_refl LinearEquiv.det_reflₓ'. -/
@[simp]
theorem det_refl : (LinearEquiv.refl R M).det = 1 :=
@@ -617,7 +617,7 @@ theorem det_refl : (LinearEquiv.refl R M).det = 1 :=
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (f : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (g : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3), Eq.{succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) (LinearEquiv.trans.{u1, u1, u1, u2, u2, u2} R R R M M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomCompTriple.right_ids.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (RingHomCompTriple.right_ids.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (LinearEquiv.det._proof_2.{u1} R _inst_1) f g)) (HMul.hMul.{u1, u1, u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (instHMul.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (MulOneClass.toHasMul.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) g) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) f))
but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (g : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.trans.{u2, u2, u2, u1, u1, u1} R R R M M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) f g)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) (LinearEquiv.trans.{u2, u2, u2, u1, u1, u1} R R R M M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) f g)) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) g) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) g) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) g) (MulOneClass.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) g) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) g) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) f))
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (g : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.trans.{u2, u2, u2, u1, u1, u1} R R R M M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) f g)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) (LinearEquiv.trans.{u2, u2, u2, u1, u1, u1} R R R M M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) f g)) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) g) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) g) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) g) (MulOneClass.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) g) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) g) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) f))
Case conversion may be inaccurate. Consider using '#align linear_equiv.det_trans LinearEquiv.det_transₓ'. -/
@[simp]
theorem det_trans (f g : M ≃ₗ[R] M) : (f.trans g).det = g.det * f.det :=
@@ -628,7 +628,7 @@ theorem det_trans (f g : M ≃ₗ[R] M) : (f.trans g).det = g.det * f.det :=
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (f : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3), Eq.{succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) (LinearEquiv.symm.{u1, u1, u2, u2} R R M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) f)) (Inv.inv.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Units.hasInv.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) f))
but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.symm.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) f)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) (LinearEquiv.symm.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) f)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (a : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) a) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) (Inv.inv.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (InvOneClass.toInv.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvOneMonoid.toInvOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivisionMonoid.toDivInvOneMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivisionMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) f))
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.symm.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) f)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) (LinearEquiv.symm.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) f)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (a : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) a) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) (Inv.inv.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (InvOneClass.toInv.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvOneMonoid.toInvOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivisionMonoid.toDivInvOneMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivisionMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) f))
Case conversion may be inaccurate. Consider using '#align linear_equiv.det_symm LinearEquiv.det_symmₓ'. -/
@[simp]
theorem det_symm (f : M ≃ₗ[R] M) : f.symm.det = f.det⁻¹ :=
@@ -639,7 +639,7 @@ theorem det_symm (f : M ≃ₗ[R] M) : f.symm.det = f.det⁻¹ :=
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] [_inst_5 : Module.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] (f : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (e : LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5), Eq.{succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (coeFn.{max (succ u1) (succ u3), max (succ u3) (succ u1)} (MonoidHom.{u3, u1} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u3, u1} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u3, u1} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u3} R _inst_1 M' _inst_4 _inst_5) (LinearEquiv.trans.{u1, u1, u1, u3, u2, u3} R R R M' M M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomCompTriple.right_ids.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (RingHomCompTriple.right_ids.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (LinearEquiv.det._proof_2.{u1} R _inst_1) (LinearEquiv.trans.{u1, u1, u1, u3, u2, u2} R R R M' M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomCompTriple.right_ids.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (RingHomCompTriple.right_ids.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (LinearEquiv.symm.{u1, u1, u2, u3} R R M M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) e) f) e)) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) f)
but is expected to have type
- forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u1}} [_inst_4 : AddCommGroup.{u1} M'] [_inst_5 : Module.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4)] (f : LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (e : LinearEquiv.{u3, u3, u2, u1} 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))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) => Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (LinearEquiv.trans.{u3, u3, u3, u1, u2, u1} R R R M' M M' (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)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_3 _inst_5 (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)))) (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)))) (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)))) (RingHomCompTriple.ids.{u3, u3} 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))))) (RingHomCompTriple.ids.{u3, u3} 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))))) (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))) (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))) (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.trans.{u3, u3, u3, u1, u2, u2} R R R M' M M (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)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 _inst_3 (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)))) (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)))) (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)))) (RingHomCompTriple.ids.{u3, u3} 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))))) (RingHomCompTriple.ids.{u3, u3} 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))))) (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))) (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))) (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.symm.{u3, u3, u2, u1} R R M M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5 (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))) e) f) e)) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (MonoidHom.{u1, u3} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (fun (_x : LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) => Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u3, u1, u3} (MonoidHom.{u1, u3} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5))))) (MulOneClass.toMul.{u3} (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u3, u1, u3} (MonoidHom.{u1, u3} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u3} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (LinearEquiv.det.{u3, u1} R _inst_1 M' _inst_4 _inst_5) (LinearEquiv.trans.{u3, u3, u3, u1, u2, u1} R R R M' M M' (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)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_3 _inst_5 (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)))) (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)))) (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)))) (RingHomCompTriple.ids.{u3, u3} 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))))) (RingHomCompTriple.ids.{u3, u3} 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))))) (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))) (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))) (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.trans.{u3, u3, u3, u1, u2, u2} R R R M' M M (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)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 _inst_3 (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)))) (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)))) (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)))) (RingHomCompTriple.ids.{u3, u3} 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))))) (RingHomCompTriple.ids.{u3, u3} 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))))) (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))) (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))) (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.symm.{u3, u3, u2, u1} R R M M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5 (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))) e) f) e)) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (MonoidHom.{u2, u3} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u2 u3, u2, u3} (MonoidHom.{u2, u3} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MulOneClass.toMul.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u3} (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u3, u2, u3} (MonoidHom.{u2, u3} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MonoidHom.monoidHomClass.{u2, u3} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (LinearEquiv.det.{u3, u2} R _inst_1 M _inst_2 _inst_3) f)
+ forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u1}} [_inst_4 : AddCommGroup.{u1} M'] [_inst_5 : Module.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4)] (f : LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (e : LinearEquiv.{u3, u3, u2, u1} 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))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) => Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (LinearEquiv.trans.{u3, u3, u3, u1, u2, u1} R R R M' M M' (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)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_3 _inst_5 (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)))) (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)))) (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)))) (RingHomCompTriple.ids.{u3, u3} 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))))) (RingHomCompTriple.ids.{u3, u3} 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))))) (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))) (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))) (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.trans.{u3, u3, u3, u1, u2, u2} R R R M' M M (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)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 _inst_3 (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)))) (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)))) (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)))) (RingHomCompTriple.ids.{u3, u3} 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))))) (RingHomCompTriple.ids.{u3, u3} 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))))) (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))) (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))) (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.symm.{u3, u3, u2, u1} R R M M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5 (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))) e) f) e)) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (MonoidHom.{u1, u3} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (fun (_x : LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) => Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u3, u1, u3} (MonoidHom.{u1, u3} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5))))) (MulOneClass.toMul.{u3} (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u3, u1, u3} (MonoidHom.{u1, u3} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u3} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (LinearEquiv.det.{u3, u1} R _inst_1 M' _inst_4 _inst_5) (LinearEquiv.trans.{u3, u3, u3, u1, u2, u1} R R R M' M M' (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)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_3 _inst_5 (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)))) (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)))) (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)))) (RingHomCompTriple.ids.{u3, u3} 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))))) (RingHomCompTriple.ids.{u3, u3} 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))))) (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))) (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))) (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.trans.{u3, u3, u3, u1, u2, u2} R R R M' M M (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)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 _inst_3 (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)))) (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)))) (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)))) (RingHomCompTriple.ids.{u3, u3} 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))))) (RingHomCompTriple.ids.{u3, u3} 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))))) (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))) (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))) (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.symm.{u3, u3, u2, u1} R R M M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5 (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))) e) f) e)) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (MonoidHom.{u2, u3} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u2 u3, u2, u3} (MonoidHom.{u2, u3} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MulOneClass.toMul.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u3} (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u3, u2, u3} (MonoidHom.{u2, u3} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MonoidHom.monoidHomClass.{u2, u3} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (LinearEquiv.det.{u3, u2} R _inst_1 M _inst_2 _inst_3) f)
Case conversion may be inaccurate. Consider using '#align linear_equiv.det_conj LinearEquiv.det_conjₓ'. -/
/-- Conjugating a linear equiv by a linear equiv does not change its determinant. -/
@[simp]
@@ -653,7 +653,7 @@ end LinearEquiv
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} A (HMul.hMul.{u2, u2, u2} A A A (instHMul.{u2} A (Distrib.toHasMul.{u2} A (Ring.toDistrib.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (HasLiftT.mk.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CoeTCₓ.coe.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (coeBase.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))))) f)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (HasLiftT.mk.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CoeTCₓ.coe.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (coeBase.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))))) (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f)))) (OfNat.ofNat.{u2} A 1 (OfNat.mk.{u2} A 1 (One.one.{u2} A (AddMonoidWithOne.toOne.{u2} A (AddGroupWithOne.toAddMonoidWithOne.{u2} A (AddCommGroupWithOne.toAddGroupWithOne.{u2} A (Ring.toAddCommGroupWithOne.{u2} A (CommRing.toRing.{u2} A _inst_8))))))))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (NonUnitalNonAssocRing.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (NonAssocRing.toNonUnitalNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) _inst_8))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f)))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) _inst_8)))))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (NonUnitalNonAssocRing.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (NonAssocRing.toNonUnitalNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) _inst_8))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f)))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) _inst_8)))))
Case conversion may be inaccurate. Consider using '#align linear_equiv.det_mul_det_symm LinearEquiv.det_mul_det_symmₓ'. -/
/-- The determinants of a `linear_equiv` and its inverse multiply to 1. -/
@[simp]
@@ -665,7 +665,7 @@ theorem LinearEquiv.det_mul_det_symm {A : Type _} [CommRing A] [Module A M] (f :
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} A (HMul.hMul.{u2, u2, u2} A A A (instHMul.{u2} A (Distrib.toHasMul.{u2} A (Ring.toDistrib.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (HasLiftT.mk.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CoeTCₓ.coe.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (coeBase.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))))) (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f))) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (HasLiftT.mk.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CoeTCₓ.coe.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (coeBase.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))))) f))) (OfNat.ofNat.{u2} A 1 (OfNat.mk.{u2} A 1 (One.one.{u2} A (AddMonoidWithOne.toOne.{u2} A (AddGroupWithOne.toAddMonoidWithOne.{u2} A (AddCommGroupWithOne.toAddGroupWithOne.{u2} A (Ring.toAddCommGroupWithOne.{u2} A (CommRing.toRing.{u2} A _inst_8))))))))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (NonUnitalNonAssocRing.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (NonAssocRing.toNonUnitalNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) _inst_8))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) _inst_8)))))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (NonUnitalNonAssocRing.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (NonAssocRing.toNonUnitalNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) _inst_8))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) _inst_8)))))
Case conversion may be inaccurate. Consider using '#align linear_equiv.det_symm_mul_det LinearEquiv.det_symm_mul_detₓ'. -/
/-- The determinants of a `linear_equiv` and its inverse multiply to 1. -/
@[simp]
@@ -691,7 +691,7 @@ theorem LinearEquiv.isUnit_det (f : M ≃ₗ[R] M') (v : Basis ι R M) (v' : Bas
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), IsUnit.{u2} A (Ring.toMonoid.{u2} A (CommRing.toRing.{u2} A _inst_8)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (HasLiftT.mk.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CoeTCₓ.coe.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (coeBase.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))))) f))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), IsUnit.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (MonoidWithZero.toMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) _inst_8)))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), IsUnit.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (MonoidWithZero.toMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) _inst_8)))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f))
Case conversion may be inaccurate. Consider using '#align linear_equiv.is_unit_det' LinearEquiv.isUnit_det'ₓ'. -/
/-- Specialization of `linear_equiv.is_unit_det` -/
theorem LinearEquiv.isUnit_det' {A : Type _} [CommRing A] [Module A M] (f : M ≃ₗ[A] M) :
@@ -703,7 +703,7 @@ theorem LinearEquiv.isUnit_det' {A : Type _} [CommRing A] [Module A M] (f : M
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_8 : Field.{u2} 𝕜] [_inst_9 : Module.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} 𝕜 (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) => (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> 𝕜) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)) _inst_9) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (HasLiftT.mk.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CoeTCₓ.coe.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (coeBase.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))))))) (LinearEquiv.symm.{u2, u2, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) f))) (Inv.inv.{u2} 𝕜 (DivInvMonoid.toHasInv.{u2} 𝕜 (DivisionRing.toDivInvMonoid.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) => (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> 𝕜) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)) _inst_9) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (HasLiftT.mk.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CoeTCₓ.coe.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (coeBase.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))))))) f)))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_8 : Field.{u2} 𝕜] [_inst_9 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => 𝕜) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) f))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)) _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) f))) (Inv.inv.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => 𝕜) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (Field.toInv.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => 𝕜) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) _inst_8) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)) _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_8 : Field.{u2} 𝕜] [_inst_9 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => 𝕜) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) f))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)) _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) f))) (Inv.inv.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => 𝕜) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (Field.toInv.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => 𝕜) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) _inst_8) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)) _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)))
Case conversion may be inaccurate. Consider using '#align linear_equiv.det_coe_symm LinearEquiv.det_coe_symmₓ'. -/
/-- The determinant of `f.symm` is the inverse of that of `f` when `f` is a linear equiv. -/
theorem LinearEquiv.det_coe_symm {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] (f : M ≃ₗ[𝕜] M) :
@@ -759,7 +759,7 @@ theorem LinearEquiv.coe_ofIsUnitDet {f : M →ₗ[R] M'} {v : Basis ι R M} {v'
lean 3 declaration is
forall {𝕜 : Type.{u1}} [_inst_8 : Field.{u1} 𝕜] {M : Type.{u2}} [_inst_9 : AddCommGroup.{u2} M] [_inst_10 : Module.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9)] [_inst_11 : FiniteDimensional.{u1, u2} 𝕜 M (Field.toDivisionRing.{u1} 𝕜 _inst_8) _inst_9 _inst_10] (f : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))) (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10), (Ne.{succ u1} 𝕜 (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) _inst_9 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) _inst_9 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) => (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) -> 𝕜) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) _inst_9 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) (LinearMap.det.{u2, u1} M _inst_9 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)) _inst_10) f) (OfNat.ofNat.{u1} 𝕜 0 (OfNat.mk.{u1} 𝕜 0 (Zero.zero.{u1} 𝕜 (MulZeroClass.toHasZero.{u1} 𝕜 (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} 𝕜 (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))))))))))) -> (LinearEquiv.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))) (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))))) (LinearMap.equivOfDetNeZero._proof_1.{u1} 𝕜 _inst_8) (LinearMap.equivOfDetNeZero._proof_2.{u1} 𝕜 _inst_8) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10)
but is expected to have type
- forall {𝕜 : Type.{u1}} [_inst_8 : Field.{u1} 𝕜] {M : Type.{u2}} [_inst_9 : AddCommGroup.{u2} M] [_inst_10 : Module.{u1, u2} 𝕜 M (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9)] [_inst_11 : FiniteDimensional.{u1, u2} 𝕜 M (Field.toDivisionRing.{u1} 𝕜 _inst_8) _inst_9 _inst_10] (f : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10), (Ne.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.semiring.{u1, u2} 𝕜 M (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (fun (_x : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.semiring.{u1, u2} 𝕜 M (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.semiring.{u1, u2} 𝕜 M (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10))))) (MulOneClass.toMul.{u1} 𝕜 (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.semiring.{u1, u2} 𝕜 M (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.semiring.{u1, u2} 𝕜 M (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8))))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.semiring.{u1, u2} 𝕜 M (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))))) (LinearMap.det.{u2, u1} M _inst_9 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)) _inst_10) f) (OfNat.ofNat.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) 0 (Zero.toOfNat0.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) (CommMonoidWithZero.toZero.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) (CommGroupWithZero.toCommMonoidWithZero.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) (Semifield.toCommGroupWithZero.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) (Field.toSemifield.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) _inst_8))))))) -> (LinearEquiv.{u1, u1, u2, u2} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u1} 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u1} 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10)
+ forall {𝕜 : Type.{u1}} [_inst_8 : Field.{u1} 𝕜] {M : Type.{u2}} [_inst_9 : AddCommGroup.{u2} M] [_inst_10 : Module.{u1, u2} 𝕜 M (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9)] [_inst_11 : FiniteDimensional.{u1, u2} 𝕜 M (Field.toDivisionRing.{u1} 𝕜 _inst_8) _inst_9 _inst_10] (f : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10), (Ne.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.semiring.{u1, u2} 𝕜 M (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (fun (_x : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.semiring.{u1, u2} 𝕜 M (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.semiring.{u1, u2} 𝕜 M (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10))))) (MulOneClass.toMul.{u1} 𝕜 (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.semiring.{u1, u2} 𝕜 M (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.semiring.{u1, u2} 𝕜 M (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8))))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.semiring.{u1, u2} 𝕜 M (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))))) (LinearMap.det.{u2, u1} M _inst_9 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)) _inst_10) f) (OfNat.ofNat.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) 0 (Zero.toOfNat0.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) (CommMonoidWithZero.toZero.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) (CommGroupWithZero.toCommMonoidWithZero.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) (Semifield.toCommGroupWithZero.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) (Field.toSemifield.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) _inst_8))))))) -> (LinearEquiv.{u1, u1, u2, u2} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u1} 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u1} 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10)
Case conversion may be inaccurate. Consider using '#align linear_map.equiv_of_det_ne_zero LinearMap.equivOfDetNeZeroₓ'. -/
/-- Builds a linear equivalence from a linear map on a finite-dimensional vector space whose
determinant is nonzero. -/
@@ -778,7 +778,7 @@ def LinearMap.equivOfDetNeZero {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCom
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (e : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (f : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (f' : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3), (forall (x : M), Eq.{succ u2} M (coeFn.{succ u2, succ u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => M -> M) (LinearMap.hasCoeToFun.{u1, u1, u2, u2} R R M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) f x) (coeFn.{succ u2, succ u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => M -> M) (LinearMap.hasCoeToFun.{u1, u1, u2, u2} R R M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) f' (coeFn.{succ u2, succ u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => M -> M) (LinearEquiv.hasCoeToFun.{u1, u1, u2, u2} R R M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) e x))) -> (Associated.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) f) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) f'))
but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (e : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (f : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (f' : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3), (forall (x : M), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M) x) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f x) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f' (FunLike.coe.{succ u1, succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M) _x) (SMulHomClass.toFunLike.{u1, u2, u1, u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R M M (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (Module.toDistribMulAction.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (Module.toDistribMulAction.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{u1, u2, u1, u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R M M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (Module.toDistribMulAction.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Module.toDistribMulAction.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, u1, u1} R M M (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, u1, u1} R R M M (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) e x))) -> (Associated.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (MonoidWithZero.toMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) _inst_1)))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) f'))
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (e : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (f : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (f' : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3), (forall (x : M), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M) x) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f x) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f' (FunLike.coe.{succ u1, succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M) _x) (SMulHomClass.toFunLike.{u1, u2, u1, u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R M M (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (Module.toDistribMulAction.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (Module.toDistribMulAction.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{u1, u2, u1, u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R M M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (Module.toDistribMulAction.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Module.toDistribMulAction.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, u1, u1} R M M (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, u1, u1} R R M M (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) e x))) -> (Associated.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (MonoidWithZero.toMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) _inst_1)))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) f'))
Case conversion may be inaccurate. Consider using '#align linear_map.associated_det_of_eq_comp LinearMap.associated_det_of_eq_compₓ'. -/
theorem LinearMap.associated_det_of_eq_comp (e : M ≃ₗ[R] M) (f f' : M →ₗ[R] M)
(h : ∀ x, f x = f' (e x)) : Associated f.det f'.det :=
@@ -796,7 +796,7 @@ theorem LinearMap.associated_det_of_eq_comp (e : M ≃ₗ[R] M) (f f' : M →ₗ
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {N : Type.{u3}} [_inst_8 : AddCommGroup.{u3} N] [_inst_9 : Module.{u1, u3} R N (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8)] (f : LinearMap.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_3) (e : LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (e' : LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9), Associated.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) (LinearMap.comp.{u1, u1, u1, u2, u3, u2} R R R M N M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomCompTriple.ids.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) f ((fun (a : Sort.{max (succ u2) (succ u3)}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{max (succ u2) (succ u3), max (succ u2) (succ u3)} a b] => self.0) (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (HasLiftT.mk.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (CoeTCₓ.coe.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (coeBase.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u1, u1, u2, u3} R R M N (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))))) e))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) (LinearMap.comp.{u1, u1, u1, u2, u3, u2} R R R M N M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomCompTriple.ids.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) f ((fun (a : Sort.{max (succ u2) (succ u3)}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{max (succ u2) (succ u3), max (succ u2) (succ u3)} a b] => self.0) (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (HasLiftT.mk.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (CoeTCₓ.coe.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (coeBase.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u1, u1, u2, u3} R R M N (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))))) e')))
but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {N : Type.{u3}} [_inst_8 : AddCommGroup.{u3} N] [_inst_9 : Module.{u2, u3} R N (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8)] (f : LinearMap.{u2, u2, u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_3) (e : LinearEquiv.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (e' : LinearEquiv.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9), Associated.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) (MonoidWithZero.toMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) _inst_1)))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e')))
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {N : Type.{u3}} [_inst_8 : AddCommGroup.{u3} N] [_inst_9 : Module.{u2, u3} R N (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8)] (f : LinearMap.{u2, u2, u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_3) (e : LinearEquiv.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (e' : LinearEquiv.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9), Associated.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) (MonoidWithZero.toMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) _inst_1)))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e')))
Case conversion may be inaccurate. Consider using '#align linear_map.associated_det_comp_equiv LinearMap.associated_det_comp_equivₓ'. -/
theorem LinearMap.associated_det_comp_equiv {N : Type _} [AddCommGroup N] [Module R N]
(f : N →ₗ[R] M) (e e' : M ≃ₗ[R] N) : Associated (f ∘ₗ ↑e).det (f ∘ₗ ↑e').det :=
@@ -958,7 +958,7 @@ variable {A : Type _} [CommRing A] [Module A M]
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u3}} [_inst_8 : CommRing.{u3} A] [_inst_9 : Module.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (e : Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (v : ι -> M), Eq.{succ u3} A (coeFn.{max (succ u1) (succ u3) (succ u2), max (max (succ u2) (succ u1)) (succ u3)} (AlternatingMap.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) (fun (_x : AlternatingMap.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) => (ι -> M) -> A) (AlternatingMap.coeFun.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) (Basis.det.{u3, u1, u2} A _inst_8 M _inst_2 _inst_9 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (Function.comp.{succ u2, succ u1, succ u1} ι M M (coeFn.{succ u1, succ u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => M -> M) (LinearMap.hasCoeToFun.{u3, u3, u1, u1} A A M M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))))) f) v)) (HMul.hMul.{u3, u3, u3} A A A (instHMul.{u3} A (Distrib.toHasMul.{u3} A (Ring.toDistrib.{u3} A (CommRing.toRing.{u3} A _inst_8)))) (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.det.{u1, u3} M _inst_2 A _inst_8 _inst_9) f) (coeFn.{max (succ u1) (succ u3) (succ u2), max (max (succ u2) (succ u1)) (succ u3)} (AlternatingMap.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) (fun (_x : AlternatingMap.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) => (ι -> M) -> A) (AlternatingMap.coeFun.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) (Basis.det.{u3, u1, u2} A _inst_8 M _inst_2 _inst_9 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (e : Basis.{u3, u2, u1} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (v : ι -> M), Eq.{succ u2} A (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) ι) (ι -> M) (fun (_x : ι -> M) => A) (AlternatingMap.funLike.{u2, u1, u2, u3} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) ι) (Basis.det.{u2, u1, u3} A _inst_8 M _inst_2 _inst_9 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (Function.comp.{succ u3, succ u1, succ u1} ι M M (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) f) v)) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) A ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (NonUnitalNonAssocRing.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (NonAssocRing.toNonUnitalNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) _inst_8))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) ι) (ι -> M) (fun (_x : ι -> M) => A) (AlternatingMap.funLike.{u2, u1, u2, u3} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) ι) (Basis.det.{u2, u1, u3} A _inst_8 M _inst_2 _inst_9 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (e : Basis.{u3, u2, u1} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (v : ι -> M), Eq.{succ u2} A (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) ι) (ι -> M) (fun (_x : ι -> M) => A) (AlternatingMap.funLike.{u2, u1, u2, u3} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) ι) (Basis.det.{u2, u1, u3} A _inst_8 M _inst_2 _inst_9 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (Function.comp.{succ u3, succ u1, succ u1} ι M M (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) f) v)) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) A ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (NonUnitalNonAssocRing.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (NonAssocRing.toNonUnitalNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) _inst_8))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) ι) (ι -> M) (fun (_x : ι -> M) => A) (AlternatingMap.funLike.{u2, u1, u2, u3} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) ι) (Basis.det.{u2, u1, u3} A _inst_8 M _inst_2 _inst_9 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v))
Case conversion may be inaccurate. Consider using '#align basis.det_comp Basis.det_compₓ'. -/
@[simp]
theorem Basis.det_comp (e : Basis ι A M) (f : M →ₗ[A] M) (v : ι → M) :
@@ -972,7 +972,7 @@ theorem Basis.det_comp (e : Basis ι A M) (f : M →ₗ[A] M) (v : ι → M) :
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {M' : Type.{u2}} [_inst_4 : AddCommGroup.{u2} M'] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u4}} [_inst_8 : CommRing.{u4} A] [_inst_9 : Module.{u4, u1} A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_10 : Module.{u4, u2} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4)] (b : Basis.{u3, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (b' : Basis.{u3, u4, u2} ι A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10) (f : LinearMap.{u4, u4, u1, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_9 _inst_10), Eq.{succ u4} A (coeFn.{max (succ u2) (succ u4) (succ u3), max (max (succ u3) (succ u2)) (succ u4)} (AlternatingMap.{u4, u2, u4, u3} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 A (AddCommGroup.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toAddCommGroup.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) ι) (fun (_x : AlternatingMap.{u4, u2, u4, u3} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 A (AddCommGroup.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toAddCommGroup.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) ι) => (ι -> M') -> A) (AlternatingMap.coeFun.{u4, u2, u4, u3} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 A (AddCommGroup.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toAddCommGroup.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) ι) (Basis.det.{u4, u2, u3} A _inst_8 M' _inst_4 _inst_10 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b') (Function.comp.{succ u3, succ u1, succ u2} ι M M' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (LinearMap.{u4, u4, u1, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_9 _inst_10) (fun (_x : LinearMap.{u4, u4, u1, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_9 _inst_10) => M -> M') (LinearMap.hasCoeToFun.{u4, u4, u1, u2} A A M M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_9 _inst_10 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))))) f) (coeFn.{max (succ u3) (succ u4) (succ u1), max (succ u3) (succ u1)} (Basis.{u3, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (fun (_x : Basis.{u3, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u4) (succ u1), succ u3, succ u1} (Basis.{u3, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) b))) (coeFn.{max (succ u4) (succ u2), max (succ u2) (succ u4)} (MonoidHom.{u2, u4} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Module.End.ring.{u4, u2} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) _inst_4 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))))) (fun (_x : MonoidHom.{u2, u4} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Module.End.ring.{u4, u2} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) _inst_4 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))))) => (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) -> A) (MonoidHom.hasCoeToFun.{u2, u4} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Module.End.ring.{u4, u2} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) _inst_4 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))))) (LinearMap.det.{u2, u4} M' _inst_4 A _inst_8 _inst_10) (LinearMap.comp.{u4, u4, u4, u2, u1, u2} A A A M' M M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_9 _inst_10 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomCompTriple.ids.{u4, u4} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))))) f ((fun (a : Sort.{max (succ u2) (succ u1)}) (b : Sort.{max (succ u2) (succ u1)}) [self : HasLiftT.{max (succ u2) (succ u1), max (succ u2) (succ u1)} a b] => self.0) (LinearEquiv.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (LinearMap.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (HasLiftT.mk.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (LinearMap.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (CoeTCₓ.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (LinearMap.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (coeBase.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (LinearMap.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u4, u4, u2, u1} A A M' M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))))))) (Basis.equiv.{u3, u3, u4, u2, u1} ι ι A M' M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 b' b (Equiv.refl.{succ u3} ι)))))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u4}} [_inst_8 : CommRing.{u4} A] [_inst_9 : Module.{u4, u1} A M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_10 : Module.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] (b : Basis.{u2, u4, u1} ι A M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (b' : Basis.{u2, u4, u3} ι A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10) (f : LinearMap.{u4, u4, u1, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_9 _inst_10), Eq.{succ u4} A (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u2), max (succ u3) (succ u2), succ u4} (AlternatingMap.{u4, u3, u4, u2} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))) ι) (ι -> M') (fun (_x : ι -> M') => A) (AlternatingMap.funLike.{u4, u3, u4, u2} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))) ι) (Basis.det.{u4, u3, u2} A _inst_8 M' _inst_4 _inst_10 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b') (Function.comp.{succ u2, succ u1, succ u3} ι M M' (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (LinearMap.{u4, u4, u1, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_9 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u4, u4, u1, u3} A A M M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_9 _inst_10 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))))) f) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), succ u2, succ u1} (Basis.{u2, u4, u1} ι A M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u4, u1} ι A M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) b))) (FunLike.coe.{max (succ u4) (succ u3), succ u3, succ u4} (MonoidHom.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))) (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (fun (_x : LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) => A) _x) (MulHomClass.toFunLike.{max u4 u3, u3, u4} (MonoidHom.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))) (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulOneClass.toMul.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10))))) (MulOneClass.toMul.{u4} A (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u4 u3, u3, u4} (MonoidHom.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))) (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))))) (LinearMap.det.{u3, u4} M' _inst_4 A _inst_8 _inst_10) (LinearMap.comp.{u4, u4, u4, u3, u1, u3} A A A M' M M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_9 _inst_10 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHomCompTriple.ids.{u4, u4} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))))) f (LinearEquiv.toLinearMap.{u4, u4, u3, u1} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9 (Basis.equiv.{u2, u2, u4, u3, u1} ι ι A M' M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 b' b (Equiv.refl.{succ u2} ι)))))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u4}} [_inst_8 : CommRing.{u4} A] [_inst_9 : Module.{u4, u1} A M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_10 : Module.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] (b : Basis.{u2, u4, u1} ι A M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (b' : Basis.{u2, u4, u3} ι A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10) (f : LinearMap.{u4, u4, u1, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_9 _inst_10), Eq.{succ u4} A (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u2), max (succ u3) (succ u2), succ u4} (AlternatingMap.{u4, u3, u4, u2} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))) ι) (ι -> M') (fun (_x : ι -> M') => A) (AlternatingMap.funLike.{u4, u3, u4, u2} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))) ι) (Basis.det.{u4, u3, u2} A _inst_8 M' _inst_4 _inst_10 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b') (Function.comp.{succ u2, succ u1, succ u3} ι M M' (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (LinearMap.{u4, u4, u1, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_9 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u4, u4, u1, u3} A A M M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_9 _inst_10 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))))) f) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), succ u2, succ u1} (Basis.{u2, u4, u1} ι A M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u4, u1} ι A M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) b))) (FunLike.coe.{max (succ u4) (succ u3), succ u3, succ u4} (MonoidHom.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))) (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (fun (_x : LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) => A) _x) (MulHomClass.toFunLike.{max u4 u3, u3, u4} (MonoidHom.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))) (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulOneClass.toMul.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10))))) (MulOneClass.toMul.{u4} A (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u4 u3, u3, u4} (MonoidHom.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))) (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))))) (LinearMap.det.{u3, u4} M' _inst_4 A _inst_8 _inst_10) (LinearMap.comp.{u4, u4, u4, u3, u1, u3} A A A M' M M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_9 _inst_10 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHomCompTriple.ids.{u4, u4} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))))) f (LinearEquiv.toLinearMap.{u4, u4, u3, u1} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9 (Basis.equiv.{u2, u2, u4, u3, u1} ι ι A M' M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 b' b (Equiv.refl.{succ u2} ι)))))
Case conversion may be inaccurate. Consider using '#align basis.det_comp_basis Basis.det_comp_basisₓ'. -/
@[simp]
theorem Basis.det_comp_basis [Module A M'] (b : Basis ι A M) (b' : Basis ι A M') (f : M →ₗ[A] M') :
@@ -988,7 +988,7 @@ theorem Basis.det_comp_basis [Module A M'] (b : Basis ι A M) (b' : Basis ι A M
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {ι' : Type.{u4}} [_inst_10 : Fintype.{u4} ι'] [_inst_11 : DecidableEq.{succ u4} ι'] (b : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (v : ι' -> M) (e : Equiv.{succ u3, succ u4} ι ι'), Eq.{succ u1} R (coeFn.{max (succ u2) (succ u1) (succ u4), max (max (succ u4) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι') (fun (_x : AlternatingMap.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι') => (ι' -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι') (Basis.det.{u1, u2, u4} R _inst_1 M _inst_2 _inst_3 ι' (fun (a : ι') (b : ι') => _inst_11 a b) _inst_10 (Basis.reindex.{u3, u4, u1, u2} ι ι' R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 b e)) v) (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) (Function.comp.{succ u3, succ u4, succ u2} ι ι' M v (coeFn.{max 1 (max (succ u3) (succ u4)) (succ u4) (succ u3), max (succ u3) (succ u4)} (Equiv.{succ u3, succ u4} ι ι') (fun (_x : Equiv.{succ u3, succ u4} ι ι') => ι -> ι') (Equiv.hasCoeToFun.{succ u3, succ u4} ι ι') e)))
but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {ι' : Type.{u4}} [_inst_10 : Fintype.{u4} ι'] [_inst_11 : DecidableEq.{succ u4} ι'] (b : Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (v : ι' -> M) (e : Equiv.{succ u3, succ u4} ι ι'), Eq.{succ u2} R (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), max (succ u1) (succ u4), succ u2} (AlternatingMap.{u2, u1, u2, u4} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι') (ι' -> M) (fun (_x : ι' -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u4} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι') (Basis.det.{u2, u1, u4} R _inst_1 M _inst_2 _inst_3 ι' (fun (a : ι') (b : ι') => _inst_11 a b) _inst_10 (Basis.reindex.{u3, u4, u2, u1} ι ι' R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 b e)) v) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) (Function.comp.{succ u3, succ u4, succ u1} ι ι' M v (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} (Equiv.{succ u3, succ u4} ι ι') ι (fun (_x : ι) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : ι) => ι') _x) (Equiv.instFunLikeEquiv.{succ u3, succ u4} ι ι') e)))
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {ι' : Type.{u4}} [_inst_10 : Fintype.{u4} ι'] [_inst_11 : DecidableEq.{succ u4} ι'] (b : Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (v : ι' -> M) (e : Equiv.{succ u3, succ u4} ι ι'), Eq.{succ u2} R (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), max (succ u1) (succ u4), succ u2} (AlternatingMap.{u2, u1, u2, u4} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι') (ι' -> M) (fun (_x : ι' -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u4} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι') (Basis.det.{u2, u1, u4} R _inst_1 M _inst_2 _inst_3 ι' (fun (a : ι') (b : ι') => _inst_11 a b) _inst_10 (Basis.reindex.{u3, u4, u2, u1} ι ι' R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 b e)) v) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) (Function.comp.{succ u3, succ u4, succ u1} ι ι' M v (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} (Equiv.{succ u3, succ u4} ι ι') ι (fun (_x : ι) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : ι) => ι') _x) (Equiv.instFunLikeEquiv.{succ u3, succ u4} ι ι') e)))
Case conversion may be inaccurate. Consider using '#align basis.det_reindex Basis.det_reindexₓ'. -/
theorem Basis.det_reindex {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (b : Basis ι R M) (v : ι' → M)
(e : ι ≃ ι') : (b.reindex e).det v = b.det (v ∘ e) := by
@@ -999,7 +999,7 @@ theorem Basis.det_reindex {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (b : Ba
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {ι' : Type.{u4}} [_inst_10 : Fintype.{u4} ι'] [_inst_11 : DecidableEq.{succ u4} ι'] (b : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (v : ι -> M) (e : Equiv.{succ u4, succ u3} ι' ι), Eq.{succ u1} R (coeFn.{max (succ u2) (succ u1) (succ u4), max (max (succ u4) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι') (fun (_x : AlternatingMap.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι') => (ι' -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι') (Basis.det.{u1, u2, u4} R _inst_1 M _inst_2 _inst_3 ι' (fun (a : ι') (b : ι') => _inst_11 a b) _inst_10 (Basis.reindex.{u3, u4, u1, u2} ι ι' R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 b (Equiv.symm.{succ u4, succ u3} ι' ι e))) (Function.comp.{succ u4, succ u3, succ u2} ι' ι M v (coeFn.{max 1 (max (succ u4) (succ u3)) (succ u3) (succ u4), max (succ u4) (succ u3)} (Equiv.{succ u4, succ u3} ι' ι) (fun (_x : Equiv.{succ u4, succ u3} ι' ι) => ι' -> ι) (Equiv.hasCoeToFun.{succ u4, succ u3} ι' ι) e))) (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) v)
but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {ι' : Type.{u4}} [_inst_10 : Fintype.{u4} ι'] [_inst_11 : DecidableEq.{succ u4} ι'] (b : Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (v : ι -> M) (e : Equiv.{succ u4, succ u3} ι' ι), Eq.{succ u2} R (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), max (succ u1) (succ u4), succ u2} (AlternatingMap.{u2, u1, u2, u4} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι') (ι' -> M) (fun (_x : ι' -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u4} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι') (Basis.det.{u2, u1, u4} R _inst_1 M _inst_2 _inst_3 ι' (fun (a : ι') (b : ι') => _inst_11 a b) _inst_10 (Basis.reindex.{u3, u4, u2, u1} ι ι' R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 b (Equiv.symm.{succ u4, succ u3} ι' ι e))) (Function.comp.{succ u4, succ u3, succ u1} ι' ι M v (FunLike.coe.{max (succ u3) (succ u4), succ u4, succ u3} (Equiv.{succ u4, succ u3} ι' ι) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : ι') => ι) _x) (Equiv.instFunLikeEquiv.{succ u4, succ u3} ι' ι) e))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) v)
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {ι' : Type.{u4}} [_inst_10 : Fintype.{u4} ι'] [_inst_11 : DecidableEq.{succ u4} ι'] (b : Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (v : ι -> M) (e : Equiv.{succ u4, succ u3} ι' ι), Eq.{succ u2} R (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), max (succ u1) (succ u4), succ u2} (AlternatingMap.{u2, u1, u2, u4} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι') (ι' -> M) (fun (_x : ι' -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u4} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι') (Basis.det.{u2, u1, u4} R _inst_1 M _inst_2 _inst_3 ι' (fun (a : ι') (b : ι') => _inst_11 a b) _inst_10 (Basis.reindex.{u3, u4, u2, u1} ι ι' R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 b (Equiv.symm.{succ u4, succ u3} ι' ι e))) (Function.comp.{succ u4, succ u3, succ u1} ι' ι M v (FunLike.coe.{max (succ u3) (succ u4), succ u4, succ u3} (Equiv.{succ u4, succ u3} ι' ι) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : ι') => ι) _x) (Equiv.instFunLikeEquiv.{succ u4, succ u3} ι' ι) e))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) v)
Case conversion may be inaccurate. Consider using '#align basis.det_reindex_symm Basis.det_reindex_symmₓ'. -/
theorem Basis.det_reindex_symm {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (b : Basis ι R M)
(v : ι → M) (e : ι' ≃ ι) : (b.reindex e.symm).det (v ∘ e) = b.det v := by
mathlib commit https://github.com/leanprover-community/mathlib/commit/c89fe2d59ae06402c3f55f978016d1ada444f57e
@@ -536,7 +536,7 @@ theorem finiteDimensional_of_det_ne_one {𝕜 : Type _} [Field 𝕜] [Module
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12}, (Eq.{succ u2} 𝕜 (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) => (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) -> 𝕜) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} 𝕜 0 (OfNat.mk.{u2} 𝕜 0 (Zero.zero.{u2} 𝕜 (MulZeroClass.toHasZero.{u2} 𝕜 (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} 𝕜 (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))))))))) -> (LT.lt.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Preorder.toHasLt.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteSemilatticeInf.toPartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteLattice.toCompleteSemilatticeInf.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.completeLattice.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (LinearMap.range.{u2, u2, u1, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (LinearMap.semilinearMapClass.{u2, u2, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11)))))) (RingHomSurjective.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11)))) f) (Top.top.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.hasTop.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12}, (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommMonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommGroupWithZero.toCommMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Semifield.toCommGroupWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Field.toSemifield.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) _inst_11))))))) -> (LT.lt.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Preorder.toLT.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.completeLattice.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (LinearMap.range.{u2, u2, u1, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (LinearMap.instSemilinearMapClassLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))))) (RingHomSurjective.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))) f) (Top.top.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.instTopSubmodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12}, (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommMonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommGroupWithZero.toCommMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Semifield.toCommGroupWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Field.toSemifield.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) _inst_11))))))) -> (LT.lt.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Preorder.toLT.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.completeLattice.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (LinearMap.range.{u2, u2, u1, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (LinearMap.semilinearMapClass.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))))) (RingHomSurjective.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))) f) (Top.top.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.instTopSubmodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))
Case conversion may be inaccurate. Consider using '#align linear_map.range_lt_top_of_det_eq_zero LinearMap.range_lt_top_of_det_eq_zeroₓ'. -/
/-- If the determinant of a map vanishes, then the map is not onto. -/
theorem range_lt_top_of_det_eq_zero {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] {f : M →ₗ[𝕜] M}
@@ -552,7 +552,7 @@ theorem range_lt_top_of_det_eq_zero {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M]
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12}, (Eq.{succ u2} 𝕜 (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) => (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) -> 𝕜) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} 𝕜 0 (OfNat.mk.{u2} 𝕜 0 (Zero.zero.{u2} 𝕜 (MulZeroClass.toHasZero.{u2} 𝕜 (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} 𝕜 (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))))))))) -> (LT.lt.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Preorder.toHasLt.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteSemilatticeInf.toPartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteLattice.toCompleteSemilatticeInf.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.completeLattice.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (Bot.bot.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.hasBot.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)) (LinearMap.ker.{u2, u2, u1, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (LinearMap.semilinearMapClass.{u2, u2, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11)))))) f))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12}, (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommMonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommGroupWithZero.toCommMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Semifield.toCommGroupWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Field.toSemifield.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) _inst_11))))))) -> (LT.lt.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Preorder.toLT.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.completeLattice.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (Bot.bot.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.instBotSubmodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)) (LinearMap.ker.{u2, u2, u1, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (LinearMap.instSemilinearMapClassLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))))) f))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12}, (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommMonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommGroupWithZero.toCommMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Semifield.toCommGroupWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Field.toSemifield.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) _inst_11))))))) -> (LT.lt.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Preorder.toLT.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.completeLattice.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (Bot.bot.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.instBotSubmodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)) (LinearMap.ker.{u2, u2, u1, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (LinearMap.semilinearMapClass.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))))) f))
Case conversion may be inaccurate. Consider using '#align linear_map.bot_lt_ker_of_det_eq_zero LinearMap.bot_lt_ker_of_det_eq_zeroₓ'. -/
/-- If the determinant of a map vanishes, then the map is not injective. -/
theorem bot_lt_ker_of_det_eq_zero {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] {f : M →ₗ[𝕜] M}
@@ -778,7 +778,7 @@ def LinearMap.equivOfDetNeZero {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCom
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (e : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (f : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (f' : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3), (forall (x : M), Eq.{succ u2} M (coeFn.{succ u2, succ u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => M -> M) (LinearMap.hasCoeToFun.{u1, u1, u2, u2} R R M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) f x) (coeFn.{succ u2, succ u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => M -> M) (LinearMap.hasCoeToFun.{u1, u1, u2, u2} R R M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) f' (coeFn.{succ u2, succ u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => M -> M) (LinearEquiv.hasCoeToFun.{u1, u1, u2, u2} R R M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) e x))) -> (Associated.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) f) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) f'))
but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (e : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (f : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (f' : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3), (forall (x : M), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M) x) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f x) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f' (FunLike.coe.{succ u1, succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M) _x) (SMulHomClass.toFunLike.{u1, u2, u1, u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R M M (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (Module.toDistribMulAction.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (Module.toDistribMulAction.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{u1, u2, u1, u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R M M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (Module.toDistribMulAction.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Module.toDistribMulAction.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, u1, u1} R M M (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, u1, u1} R R M M (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) e x))) -> (Associated.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (MonoidWithZero.toMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) _inst_1)))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) f'))
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (e : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (f : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (f' : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3), (forall (x : M), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M) x) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f x) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f' (FunLike.coe.{succ u1, succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M) _x) (SMulHomClass.toFunLike.{u1, u2, u1, u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R M M (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (Module.toDistribMulAction.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (Module.toDistribMulAction.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{u1, u2, u1, u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R M M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (Module.toDistribMulAction.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Module.toDistribMulAction.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, u1, u1} R M M (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, u1, u1} R R M M (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) e x))) -> (Associated.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (MonoidWithZero.toMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) _inst_1)))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) f'))
Case conversion may be inaccurate. Consider using '#align linear_map.associated_det_of_eq_comp LinearMap.associated_det_of_eq_compₓ'. -/
theorem LinearMap.associated_det_of_eq_comp (e : M ≃ₗ[R] M) (f f' : M →ₗ[R] M)
(h : ∀ x, f x = f' (e x)) : Associated f.det f'.det :=
@@ -958,7 +958,7 @@ variable {A : Type _} [CommRing A] [Module A M]
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u3}} [_inst_8 : CommRing.{u3} A] [_inst_9 : Module.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (e : Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (v : ι -> M), Eq.{succ u3} A (coeFn.{max (succ u1) (succ u3) (succ u2), max (max (succ u2) (succ u1)) (succ u3)} (AlternatingMap.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) (fun (_x : AlternatingMap.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) => (ι -> M) -> A) (AlternatingMap.coeFun.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) (Basis.det.{u3, u1, u2} A _inst_8 M _inst_2 _inst_9 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (Function.comp.{succ u2, succ u1, succ u1} ι M M (coeFn.{succ u1, succ u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => M -> M) (LinearMap.hasCoeToFun.{u3, u3, u1, u1} A A M M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))))) f) v)) (HMul.hMul.{u3, u3, u3} A A A (instHMul.{u3} A (Distrib.toHasMul.{u3} A (Ring.toDistrib.{u3} A (CommRing.toRing.{u3} A _inst_8)))) (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.det.{u1, u3} M _inst_2 A _inst_8 _inst_9) f) (coeFn.{max (succ u1) (succ u3) (succ u2), max (max (succ u2) (succ u1)) (succ u3)} (AlternatingMap.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) (fun (_x : AlternatingMap.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) => (ι -> M) -> A) (AlternatingMap.coeFun.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) (Basis.det.{u3, u1, u2} A _inst_8 M _inst_2 _inst_9 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (e : Basis.{u3, u2, u1} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (v : ι -> M), Eq.{succ u2} A (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) ι) (ι -> M) (fun (_x : ι -> M) => A) (AlternatingMap.funLike.{u2, u1, u2, u3} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) ι) (Basis.det.{u2, u1, u3} A _inst_8 M _inst_2 _inst_9 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (Function.comp.{succ u3, succ u1, succ u1} ι M M (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) f) v)) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) A ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (NonUnitalNonAssocRing.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (NonAssocRing.toNonUnitalNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) _inst_8))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) ι) (ι -> M) (fun (_x : ι -> M) => A) (AlternatingMap.funLike.{u2, u1, u2, u3} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) ι) (Basis.det.{u2, u1, u3} A _inst_8 M _inst_2 _inst_9 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (e : Basis.{u3, u2, u1} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (v : ι -> M), Eq.{succ u2} A (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) ι) (ι -> M) (fun (_x : ι -> M) => A) (AlternatingMap.funLike.{u2, u1, u2, u3} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) ι) (Basis.det.{u2, u1, u3} A _inst_8 M _inst_2 _inst_9 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (Function.comp.{succ u3, succ u1, succ u1} ι M M (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) f) v)) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) A ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (NonUnitalNonAssocRing.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (NonAssocRing.toNonUnitalNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) _inst_8))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) ι) (ι -> M) (fun (_x : ι -> M) => A) (AlternatingMap.funLike.{u2, u1, u2, u3} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) ι) (Basis.det.{u2, u1, u3} A _inst_8 M _inst_2 _inst_9 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v))
Case conversion may be inaccurate. Consider using '#align basis.det_comp Basis.det_compₓ'. -/
@[simp]
theorem Basis.det_comp (e : Basis ι A M) (f : M →ₗ[A] M) (v : ι → M) :
@@ -972,7 +972,7 @@ theorem Basis.det_comp (e : Basis ι A M) (f : M →ₗ[A] M) (v : ι → M) :
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {M' : Type.{u2}} [_inst_4 : AddCommGroup.{u2} M'] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u4}} [_inst_8 : CommRing.{u4} A] [_inst_9 : Module.{u4, u1} A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_10 : Module.{u4, u2} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4)] (b : Basis.{u3, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (b' : Basis.{u3, u4, u2} ι A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10) (f : LinearMap.{u4, u4, u1, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_9 _inst_10), Eq.{succ u4} A (coeFn.{max (succ u2) (succ u4) (succ u3), max (max (succ u3) (succ u2)) (succ u4)} (AlternatingMap.{u4, u2, u4, u3} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 A (AddCommGroup.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toAddCommGroup.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) ι) (fun (_x : AlternatingMap.{u4, u2, u4, u3} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 A (AddCommGroup.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toAddCommGroup.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) ι) => (ι -> M') -> A) (AlternatingMap.coeFun.{u4, u2, u4, u3} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 A (AddCommGroup.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toAddCommGroup.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) ι) (Basis.det.{u4, u2, u3} A _inst_8 M' _inst_4 _inst_10 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b') (Function.comp.{succ u3, succ u1, succ u2} ι M M' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (LinearMap.{u4, u4, u1, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_9 _inst_10) (fun (_x : LinearMap.{u4, u4, u1, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_9 _inst_10) => M -> M') (LinearMap.hasCoeToFun.{u4, u4, u1, u2} A A M M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_9 _inst_10 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))))) f) (coeFn.{max (succ u3) (succ u4) (succ u1), max (succ u3) (succ u1)} (Basis.{u3, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (fun (_x : Basis.{u3, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u4) (succ u1), succ u3, succ u1} (Basis.{u3, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) b))) (coeFn.{max (succ u4) (succ u2), max (succ u2) (succ u4)} (MonoidHom.{u2, u4} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Module.End.ring.{u4, u2} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) _inst_4 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))))) (fun (_x : MonoidHom.{u2, u4} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Module.End.ring.{u4, u2} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) _inst_4 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))))) => (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) -> A) (MonoidHom.hasCoeToFun.{u2, u4} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Module.End.ring.{u4, u2} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) _inst_4 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))))) (LinearMap.det.{u2, u4} M' _inst_4 A _inst_8 _inst_10) (LinearMap.comp.{u4, u4, u4, u2, u1, u2} A A A M' M M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_9 _inst_10 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomCompTriple.ids.{u4, u4} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))))) f ((fun (a : Sort.{max (succ u2) (succ u1)}) (b : Sort.{max (succ u2) (succ u1)}) [self : HasLiftT.{max (succ u2) (succ u1), max (succ u2) (succ u1)} a b] => self.0) (LinearEquiv.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (LinearMap.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (HasLiftT.mk.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (LinearMap.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (CoeTCₓ.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (LinearMap.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (coeBase.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (LinearMap.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u4, u4, u2, u1} A A M' M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))))))) (Basis.equiv.{u3, u3, u4, u2, u1} ι ι A M' M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 b' b (Equiv.refl.{succ u3} ι)))))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u4}} [_inst_8 : CommRing.{u4} A] [_inst_9 : Module.{u4, u1} A M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_10 : Module.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] (b : Basis.{u2, u4, u1} ι A M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (b' : Basis.{u2, u4, u3} ι A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10) (f : LinearMap.{u4, u4, u1, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_9 _inst_10), Eq.{succ u4} A (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u2), max (succ u3) (succ u2), succ u4} (AlternatingMap.{u4, u3, u4, u2} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))) ι) (ι -> M') (fun (_x : ι -> M') => A) (AlternatingMap.funLike.{u4, u3, u4, u2} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))) ι) (Basis.det.{u4, u3, u2} A _inst_8 M' _inst_4 _inst_10 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b') (Function.comp.{succ u2, succ u1, succ u3} ι M M' (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (LinearMap.{u4, u4, u1, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_9 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u4, u4, u1, u3} A A M M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_9 _inst_10 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))))) f) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), succ u2, succ u1} (Basis.{u2, u4, u1} ι A M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u4, u1} ι A M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) b))) (FunLike.coe.{max (succ u4) (succ u3), succ u3, succ u4} (MonoidHom.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))) (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (fun (_x : LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) => A) _x) (MulHomClass.toFunLike.{max u4 u3, u3, u4} (MonoidHom.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))) (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulOneClass.toMul.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10))))) (MulOneClass.toMul.{u4} A (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u4 u3, u3, u4} (MonoidHom.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))) (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))))) (LinearMap.det.{u3, u4} M' _inst_4 A _inst_8 _inst_10) (LinearMap.comp.{u4, u4, u4, u3, u1, u3} A A A M' M M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_9 _inst_10 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHomCompTriple.ids.{u4, u4} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))))) f (LinearEquiv.toLinearMap.{u4, u4, u3, u1} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9 (Basis.equiv.{u2, u2, u4, u3, u1} ι ι A M' M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 b' b (Equiv.refl.{succ u2} ι)))))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u4}} [_inst_8 : CommRing.{u4} A] [_inst_9 : Module.{u4, u1} A M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_10 : Module.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] (b : Basis.{u2, u4, u1} ι A M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (b' : Basis.{u2, u4, u3} ι A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10) (f : LinearMap.{u4, u4, u1, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_9 _inst_10), Eq.{succ u4} A (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u2), max (succ u3) (succ u2), succ u4} (AlternatingMap.{u4, u3, u4, u2} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))) ι) (ι -> M') (fun (_x : ι -> M') => A) (AlternatingMap.funLike.{u4, u3, u4, u2} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))) ι) (Basis.det.{u4, u3, u2} A _inst_8 M' _inst_4 _inst_10 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b') (Function.comp.{succ u2, succ u1, succ u3} ι M M' (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (LinearMap.{u4, u4, u1, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_9 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u4, u4, u1, u3} A A M M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_9 _inst_10 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))))) f) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), succ u2, succ u1} (Basis.{u2, u4, u1} ι A M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u4, u1} ι A M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) b))) (FunLike.coe.{max (succ u4) (succ u3), succ u3, succ u4} (MonoidHom.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))) (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (fun (_x : LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) => A) _x) (MulHomClass.toFunLike.{max u4 u3, u3, u4} (MonoidHom.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))) (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulOneClass.toMul.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10))))) (MulOneClass.toMul.{u4} A (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u4 u3, u3, u4} (MonoidHom.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))) (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))))) (LinearMap.det.{u3, u4} M' _inst_4 A _inst_8 _inst_10) (LinearMap.comp.{u4, u4, u4, u3, u1, u3} A A A M' M M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_9 _inst_10 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHomCompTriple.ids.{u4, u4} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))))) f (LinearEquiv.toLinearMap.{u4, u4, u3, u1} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9 (Basis.equiv.{u2, u2, u4, u3, u1} ι ι A M' M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 b' b (Equiv.refl.{succ u2} ι)))))
Case conversion may be inaccurate. Consider using '#align basis.det_comp_basis Basis.det_comp_basisₓ'. -/
@[simp]
theorem Basis.det_comp_basis [Module A M'] (b : Basis ι A M) (b' : Basis ι A M') (f : M →ₗ[A] M') :
mathlib commit https://github.com/leanprover-community/mathlib/commit/0b9eaaa7686280fad8cce467f5c3c57ee6ce77f8
@@ -534,7 +534,7 @@ theorem finiteDimensional_of_det_ne_one {𝕜 : Type _} [Field 𝕜] [Module
/- warning: linear_map.range_lt_top_of_det_eq_zero -> LinearMap.range_lt_top_of_det_eq_zero is a dubious translation:
lean 3 declaration is
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12}, (Eq.{succ u2} 𝕜 (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) => (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) -> 𝕜) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} 𝕜 0 (OfNat.mk.{u2} 𝕜 0 (Zero.zero.{u2} 𝕜 (MulZeroClass.toHasZero.{u2} 𝕜 (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} 𝕜 (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))))))))) -> (LT.lt.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Preorder.toLT.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteSemilatticeInf.toPartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteLattice.toCompleteSemilatticeInf.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.completeLattice.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (LinearMap.range.{u2, u2, u1, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (LinearMap.semilinearMapClass.{u2, u2, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11)))))) (RingHomSurjective.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11)))) f) (Top.top.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.hasTop.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12}, (Eq.{succ u2} 𝕜 (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) => (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) -> 𝕜) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} 𝕜 0 (OfNat.mk.{u2} 𝕜 0 (Zero.zero.{u2} 𝕜 (MulZeroClass.toHasZero.{u2} 𝕜 (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} 𝕜 (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))))))))) -> (LT.lt.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Preorder.toHasLt.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteSemilatticeInf.toPartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteLattice.toCompleteSemilatticeInf.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.completeLattice.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (LinearMap.range.{u2, u2, u1, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (LinearMap.semilinearMapClass.{u2, u2, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11)))))) (RingHomSurjective.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11)))) f) (Top.top.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.hasTop.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))
but is expected to have type
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12}, (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommMonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommGroupWithZero.toCommMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Semifield.toCommGroupWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Field.toSemifield.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) _inst_11))))))) -> (LT.lt.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Preorder.toLT.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.completeLattice.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (LinearMap.range.{u2, u2, u1, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (LinearMap.instSemilinearMapClassLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))))) (RingHomSurjective.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))) f) (Top.top.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.instTopSubmodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))
Case conversion may be inaccurate. Consider using '#align linear_map.range_lt_top_of_det_eq_zero LinearMap.range_lt_top_of_det_eq_zeroₓ'. -/
@@ -550,7 +550,7 @@ theorem range_lt_top_of_det_eq_zero {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M]
/- warning: linear_map.bot_lt_ker_of_det_eq_zero -> LinearMap.bot_lt_ker_of_det_eq_zero is a dubious translation:
lean 3 declaration is
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12}, (Eq.{succ u2} 𝕜 (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) => (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) -> 𝕜) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} 𝕜 0 (OfNat.mk.{u2} 𝕜 0 (Zero.zero.{u2} 𝕜 (MulZeroClass.toHasZero.{u2} 𝕜 (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} 𝕜 (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))))))))) -> (LT.lt.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Preorder.toLT.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteSemilatticeInf.toPartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteLattice.toCompleteSemilatticeInf.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.completeLattice.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (Bot.bot.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.hasBot.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)) (LinearMap.ker.{u2, u2, u1, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (LinearMap.semilinearMapClass.{u2, u2, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11)))))) f))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12}, (Eq.{succ u2} 𝕜 (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) => (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) -> 𝕜) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} 𝕜 0 (OfNat.mk.{u2} 𝕜 0 (Zero.zero.{u2} 𝕜 (MulZeroClass.toHasZero.{u2} 𝕜 (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} 𝕜 (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))))))))) -> (LT.lt.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Preorder.toHasLt.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteSemilatticeInf.toPartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteLattice.toCompleteSemilatticeInf.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.completeLattice.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (Bot.bot.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.hasBot.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)) (LinearMap.ker.{u2, u2, u1, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (LinearMap.semilinearMapClass.{u2, u2, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11)))))) f))
but is expected to have type
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12}, (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommMonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommGroupWithZero.toCommMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Semifield.toCommGroupWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Field.toSemifield.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) _inst_11))))))) -> (LT.lt.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Preorder.toLT.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.completeLattice.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (Bot.bot.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.instBotSubmodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)) (LinearMap.ker.{u2, u2, u1, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (LinearMap.instSemilinearMapClassLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))))) f))
Case conversion may be inaccurate. Consider using '#align linear_map.bot_lt_ker_of_det_eq_zero LinearMap.bot_lt_ker_of_det_eq_zeroₓ'. -/
@@ -1044,7 +1044,7 @@ theorem Pi.basisFun_det : (Pi.basisFun R ι).det = Matrix.detRowAlternating :=
/- warning: basis.det_smul_mk_coord_eq_det_update -> Basis.det_smul_mk_coord_eq_det_update is a dubious translation:
lean 3 declaration is
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) {v : ι -> M} (hli : LinearIndependent.{u3, u1, u2} ι R M v (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (hsp : LE.le.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (Preorder.toLE.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (CompleteSemilatticeInf.toPartialOrder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (Submodule.completeLattice.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3))))) (Top.top.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (Submodule.hasTop.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) (Submodule.span.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 (Set.range.{u2, succ u3} M ι v))) (i : ι), Eq.{succ (max u2 u1)} (LinearMap.{u1, u1, u2, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M R (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) _inst_3 (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (SMul.smul.{u1, max u2 u1} R (LinearMap.{u1, u1, u2, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M R (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) _inst_3 (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearMap.hasSmul.{u1, u1, u1, u2, u1} R R R M R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) _inst_3 (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Module.toDistribMulAction.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (smulCommClass_self.{u1, u1} R R (CommRing.toCommMonoid.{u1} R _inst_1) (Monoid.toMulAction.{u1} R (CommMonoid.toMonoid.{u1} R (CommRing.toCommMonoid.{u1} R _inst_1))))) (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v) (Basis.coord.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 (Basis.mk.{u3, u1, u2} ι R M v (CommRing.toRing.{u1} R _inst_1) _inst_2 _inst_3 hli hsp) i)) (MultilinearMap.toLinearMap.{u1, u2, u1, u3} R ι (fun (i : ι) => M) R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (fun (i : ι) => _inst_3) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (AlternatingMap.toMultilinearMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e)) (fun (a : ι) (b : ι) => _inst_6 a b) v i)
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) {v : ι -> M} (hli : LinearIndependent.{u3, u1, u2} ι R M v (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (hsp : LE.le.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (Preorder.toHasLe.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (CompleteSemilatticeInf.toPartialOrder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (Submodule.completeLattice.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3))))) (Top.top.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (Submodule.hasTop.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) (Submodule.span.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 (Set.range.{u2, succ u3} M ι v))) (i : ι), Eq.{succ (max u2 u1)} (LinearMap.{u1, u1, u2, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M R (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) _inst_3 (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (SMul.smul.{u1, max u2 u1} R (LinearMap.{u1, u1, u2, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M R (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) _inst_3 (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearMap.hasSmul.{u1, u1, u1, u2, u1} R R R M R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) _inst_3 (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Module.toDistribMulAction.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (smulCommClass_self.{u1, u1} R R (CommRing.toCommMonoid.{u1} R _inst_1) (Monoid.toMulAction.{u1} R (CommMonoid.toMonoid.{u1} R (CommRing.toCommMonoid.{u1} R _inst_1))))) (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v) (Basis.coord.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 (Basis.mk.{u3, u1, u2} ι R M v (CommRing.toRing.{u1} R _inst_1) _inst_2 _inst_3 hli hsp) i)) (MultilinearMap.toLinearMap.{u1, u2, u1, u3} R ι (fun (i : ι) => M) R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (fun (i : ι) => _inst_3) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (AlternatingMap.toMultilinearMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e)) (fun (a : ι) (b : ι) => _inst_6 a b) v i)
but is expected to have type
forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) {v : ι -> M} (hli : LinearIndependent.{u3, u2, u1} ι R M v (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (hsp : LE.le.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Submodule.completeLattice.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (Top.top.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Submodule.instTopSubmodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (Submodule.span.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 (Set.range.{u1, succ u3} M ι v))) (i : ι), Eq.{max (succ u2) (succ u1)} (LinearMap.{u2, u2, 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)))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _inst_3 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (HSMul.hSMul.{u2, max u2 u1, max u2 u1} R (LinearMap.{u2, u2, 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)))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _inst_3 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (LinearMap.{u2, u2, 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)))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _inst_3 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (instHSMul.{u2, max u2 u1} R (LinearMap.{u2, u2, 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)))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _inst_3 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (LinearMap.instSMulLinearMap.{u2, u2, u2, u1, u2} R R R M R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _inst_3 (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)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (Module.toDistribMulAction.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (smulCommClass_self.{u2, u2} R R (CommRing.toCommMonoid.{u2} R _inst_1) (MulActionWithZero.toMulAction.{u2, u2} R R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v) (Basis.coord.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 (Basis.mk.{u3, u2, u1} ι R M v (CommRing.toRing.{u2} R _inst_1) _inst_2 _inst_3 hli hsp) i)) (MultilinearMap.toLinearMap.{u2, u1, u2, u3} R ι (fun (i : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (fun (i : ι) => _inst_3) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AlternatingMap.toMultilinearMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e)) (fun (a : ι) (b : ι) => _inst_6 a b) v i)
Case conversion may be inaccurate. Consider using '#align basis.det_smul_mk_coord_eq_det_update Basis.det_smul_mk_coord_eq_det_updateₓ'. -/
mathlib commit https://github.com/leanprover-community/mathlib/commit/0b9eaaa7686280fad8cce467f5c3c57ee6ce77f8
@@ -80,7 +80,7 @@ variable {m n : Type _} [Fintype m] [Fintype n]
lean 3 declaration is
forall {m : Type.{u_6}} {n : Type.{u_7}} [_inst_9 : Fintype.{u_6} m] [_inst_10 : Fintype.{u_7} n] {R : Type.{u_1}} [_inst_11 : CommRing.{u_1} R] [_inst_12 : Nontrivial.{u_1} R], (LinearEquiv.{u_1, u_1, max u_6 u_1, max u_7 u_1} R R (Ring.toSemiring.{u_1} R (CommRing.toRing.{u_1} R _inst_11)) (Ring.toSemiring.{u_1} R (CommRing.toRing.{u_1} R _inst_11)) (RingHom.id.{u_1} R (Semiring.toNonAssocSemiring.{u_1} R (Ring.toSemiring.{u_1} R (CommRing.toRing.{u_1} R _inst_11)))) (RingHom.id.{u_1} R (Semiring.toNonAssocSemiring.{u_1} R (Ring.toSemiring.{u_1} R (CommRing.toRing.{u_1} R _inst_11)))) (equivOfPiLEquivPi._proof_1.{u_1} R _inst_11) (equivOfPiLEquivPi._proof_2.{u_1} R _inst_11) (m -> R) (n -> R) (Pi.addCommMonoid.{u_6, u_1} m (fun (ᾰ : m) => R) (fun (i : m) => AddCommGroup.toAddCommMonoid.{u_1} R (NonUnitalNonAssocRing.toAddCommGroup.{u_1} R (NonAssocRing.toNonUnitalNonAssocRing.{u_1} R (Ring.toNonAssocRing.{u_1} R (CommRing.toRing.{u_1} R _inst_11)))))) (Pi.addCommMonoid.{u_7, u_1} n (fun (ᾰ : n) => R) (fun (i : n) => AddCommGroup.toAddCommMonoid.{u_1} R (NonUnitalNonAssocRing.toAddCommGroup.{u_1} R (NonAssocRing.toNonUnitalNonAssocRing.{u_1} R (Ring.toNonAssocRing.{u_1} R (CommRing.toRing.{u_1} R _inst_11)))))) (Pi.Function.module.{u_6, u_1, u_1} m R R (Ring.toSemiring.{u_1} R (CommRing.toRing.{u_1} R _inst_11)) (AddCommGroup.toAddCommMonoid.{u_1} R (NonUnitalNonAssocRing.toAddCommGroup.{u_1} R (NonAssocRing.toNonUnitalNonAssocRing.{u_1} R (Ring.toNonAssocRing.{u_1} R (CommRing.toRing.{u_1} R _inst_11))))) (Semiring.toModule.{u_1} R (Ring.toSemiring.{u_1} R (CommRing.toRing.{u_1} R _inst_11)))) (Pi.Function.module.{u_7, u_1, u_1} n R R (Ring.toSemiring.{u_1} R (CommRing.toRing.{u_1} R _inst_11)) (AddCommGroup.toAddCommMonoid.{u_1} R (NonUnitalNonAssocRing.toAddCommGroup.{u_1} R (NonAssocRing.toNonUnitalNonAssocRing.{u_1} R (Ring.toNonAssocRing.{u_1} R (CommRing.toRing.{u_1} R _inst_11))))) (Semiring.toModule.{u_1} R (Ring.toSemiring.{u_1} R (CommRing.toRing.{u_1} R _inst_11))))) -> (Equiv.{succ u_6, succ u_7} m n)
but is expected to have type
- forall {m : Type.{u_1}} {n : Type.{u_2}} [_inst_9 : Fintype.{u_1} m] [_inst_10 : Fintype.{u_2} n] {R : Type.{u_3}} [_inst_11 : CommRing.{u_3} R] [_inst_12 : Nontrivial.{u_3} R], (LinearEquiv.{u_3, u_3, max u_1 u_3, max u_2 u_3} R R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11)) (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11)) (RingHom.id.{u_3} R (Semiring.toNonAssocSemiring.{u_3} R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11)))) (RingHom.id.{u_3} R (Semiring.toNonAssocSemiring.{u_3} R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11)))) (RingHomInvPair.ids.{u_3} R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11))) (RingHomInvPair.ids.{u_3} R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11))) (m -> R) (n -> R) (Pi.addCommMonoid.{u_1, u_3} m (fun (ᾰ : m) => R) (fun (i : m) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u_3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_3} R (NonAssocRing.toNonUnitalNonAssocRing.{u_3} R (Ring.toNonAssocRing.{u_3} R (CommRing.toRing.{u_3} R _inst_11)))))) (Pi.addCommMonoid.{u_2, u_3} n (fun (ᾰ : n) => R) (fun (i : n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u_3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_3} R (NonAssocRing.toNonUnitalNonAssocRing.{u_3} R (Ring.toNonAssocRing.{u_3} R (CommRing.toRing.{u_3} R _inst_11)))))) (Pi.module.{u_1, u_3, u_3} m (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.269 : m) => R) R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11)) (fun (i : m) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u_3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_3} R (NonAssocRing.toNonUnitalNonAssocRing.{u_3} R (Ring.toNonAssocRing.{u_3} R (CommRing.toRing.{u_3} R _inst_11))))) (fun (i : m) => Semiring.toModule.{u_3} R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11)))) (Pi.module.{u_2, u_3, u_3} n (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.272 : n) => R) R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11)) (fun (i : n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u_3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_3} R (NonAssocRing.toNonUnitalNonAssocRing.{u_3} R (Ring.toNonAssocRing.{u_3} R (CommRing.toRing.{u_3} R _inst_11))))) (fun (i : n) => Semiring.toModule.{u_3} R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11))))) -> (Equiv.{succ u_1, succ u_2} m n)
+ forall {m : Type.{u_1}} {n : Type.{u_2}} [_inst_9 : Fintype.{u_1} m] [_inst_10 : Fintype.{u_2} n] {R : Type.{u_3}} [_inst_11 : CommRing.{u_3} R] [_inst_12 : Nontrivial.{u_3} R], (LinearEquiv.{u_3, u_3, max u_1 u_3, max u_2 u_3} R R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11)) (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11)) (RingHom.id.{u_3} R (Semiring.toNonAssocSemiring.{u_3} R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11)))) (RingHom.id.{u_3} R (Semiring.toNonAssocSemiring.{u_3} R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11)))) (RingHomInvPair.ids.{u_3} R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11))) (RingHomInvPair.ids.{u_3} R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11))) (m -> R) (n -> R) (Pi.addCommMonoid.{u_1, u_3} m (fun (ᾰ : m) => R) (fun (i : m) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u_3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_3} R (NonAssocRing.toNonUnitalNonAssocRing.{u_3} R (Ring.toNonAssocRing.{u_3} R (CommRing.toRing.{u_3} R _inst_11)))))) (Pi.addCommMonoid.{u_2, u_3} n (fun (ᾰ : n) => R) (fun (i : n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u_3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_3} R (NonAssocRing.toNonUnitalNonAssocRing.{u_3} R (Ring.toNonAssocRing.{u_3} R (CommRing.toRing.{u_3} R _inst_11)))))) (Pi.module.{u_1, u_3, u_3} m (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.264 : m) => R) R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11)) (fun (i : m) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u_3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_3} R (NonAssocRing.toNonUnitalNonAssocRing.{u_3} R (Ring.toNonAssocRing.{u_3} R (CommRing.toRing.{u_3} R _inst_11))))) (fun (i : m) => Semiring.toModule.{u_3} R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11)))) (Pi.module.{u_2, u_3, u_3} n (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.267 : n) => R) R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11)) (fun (i : n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u_3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_3} R (NonAssocRing.toNonUnitalNonAssocRing.{u_3} R (Ring.toNonAssocRing.{u_3} R (CommRing.toRing.{u_3} R _inst_11))))) (fun (i : n) => Semiring.toModule.{u_3} R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11))))) -> (Equiv.{succ u_1, succ u_2} m n)
Case conversion may be inaccurate. Consider using '#align equiv_of_pi_lequiv_pi equivOfPiLEquivPiₓ'. -/
/-- If `R^m` and `R^n` are linearly equivalent, then `m` and `n` are also equivalent. -/
def equivOfPiLEquivPi {R : Type _} [CommRing R] [Nontrivial R] (e : (m → R) ≃ₗ[R] n → R) : m ≃ n :=
@@ -316,7 +316,7 @@ theorem det_toMatrix (b : Basis ι A M) (f : M →ₗ[A] M) : Matrix.det (toMatr
lean 3 declaration is
forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {ι : Type.{u2}} [_inst_11 : Fintype.{u2} ι] [_inst_12 : DecidableEq.{succ u2} ι] (f : LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))), Eq.{succ u1} A (Matrix.det.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_12 a b) _inst_11 A _inst_8 (coeFn.{succ (max u2 u1), succ (max u2 u1)} (LinearEquiv.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_1.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.toMatrix'._proof_2.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_3.{u1, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι)) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (_x : LinearEquiv.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_1.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.toMatrix'._proof_2.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_3.{u1, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι)) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) -> (Matrix.{u2, u2, u1} ι ι A)) (LinearEquiv.hasCoeToFun.{u1, u1, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_3.{u1, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι)) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_1.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.toMatrix'._proof_2.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.toMatrix'.{u1, u2, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι ι _inst_11 (fun (a : ι) (b : ι) => _inst_12 a b)) f)) (coeFn.{max (succ u1) (succ (max u2 u1)), max (succ (max u2 u1)) (succ u1)} (MonoidHom.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u2 u1} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (fun (_x : MonoidHom.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u2 u1} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) => (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) -> A) (MonoidHom.hasCoeToFun.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u2 u1} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.det.{max u2 u1, u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A _inst_8 (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) f)
but is expected to have type
- forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {ι : Type.{u2}} [_inst_11 : Fintype.{u2} ι] [_inst_12 : DecidableEq.{succ u2} ι] (f : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))), Eq.{succ u1} A (Matrix.det.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_12 a b) _inst_11 A _inst_8 (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (_x : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => Matrix.{u2, u2, u1} ι ι A) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (SMulZeroClass.toSMul.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddMonoid.toZero.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddMonoid.toAddZeroClass.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Module.toDistribMulAction.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, max u2 u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.toMatrix'.{u1, u2, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι ι _inst_11 (fun (a : ι) (b : ι) => _inst_12 a b)) f)) (FunLike.coe.{max (succ u1) (succ (max u1 u2)), succ (max u1 u2), succ u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (_x : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => A) _x) (MulHomClass.toFunLike.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulOneClass.toMul.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.det.{max u1 u2, u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) A _inst_8 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) f)
+ forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {ι : Type.{u2}} [_inst_11 : Fintype.{u2} ι] [_inst_12 : DecidableEq.{succ u2} ι] (f : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))), Eq.{succ u1} A (Matrix.det.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_12 a b) _inst_11 A _inst_8 (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (_x : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => Matrix.{u2, u2, u1} ι ι A) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (SMulZeroClass.toSMul.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddMonoid.toZero.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddMonoid.toAddZeroClass.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Module.toDistribMulAction.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, max u2 u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.toMatrix'.{u1, u2, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι ι _inst_11 (fun (a : ι) (b : ι) => _inst_12 a b)) f)) (FunLike.coe.{max (succ u1) (succ (max u1 u2)), succ (max u1 u2), succ u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (_x : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => A) _x) (MulHomClass.toFunLike.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulOneClass.toMul.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.det.{max u1 u2, u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) A _inst_8 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2653 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) f)
Case conversion may be inaccurate. Consider using '#align linear_map.det_to_matrix' LinearMap.det_toMatrix'ₓ'. -/
@[simp]
theorem det_toMatrix' {ι : Type _} [Fintype ι] [DecidableEq ι] (f : (ι → A) →ₗ[A] ι → A) :
mathlib commit https://github.com/leanprover-community/mathlib/commit/08e1d8d4d989df3a6df86f385e9053ec8a372cc1
@@ -80,7 +80,7 @@ variable {m n : Type _} [Fintype m] [Fintype n]
lean 3 declaration is
forall {m : Type.{u_6}} {n : Type.{u_7}} [_inst_9 : Fintype.{u_6} m] [_inst_10 : Fintype.{u_7} n] {R : Type.{u_1}} [_inst_11 : CommRing.{u_1} R] [_inst_12 : Nontrivial.{u_1} R], (LinearEquiv.{u_1, u_1, max u_6 u_1, max u_7 u_1} R R (Ring.toSemiring.{u_1} R (CommRing.toRing.{u_1} R _inst_11)) (Ring.toSemiring.{u_1} R (CommRing.toRing.{u_1} R _inst_11)) (RingHom.id.{u_1} R (Semiring.toNonAssocSemiring.{u_1} R (Ring.toSemiring.{u_1} R (CommRing.toRing.{u_1} R _inst_11)))) (RingHom.id.{u_1} R (Semiring.toNonAssocSemiring.{u_1} R (Ring.toSemiring.{u_1} R (CommRing.toRing.{u_1} R _inst_11)))) (equivOfPiLEquivPi._proof_1.{u_1} R _inst_11) (equivOfPiLEquivPi._proof_2.{u_1} R _inst_11) (m -> R) (n -> R) (Pi.addCommMonoid.{u_6, u_1} m (fun (ᾰ : m) => R) (fun (i : m) => AddCommGroup.toAddCommMonoid.{u_1} R (NonUnitalNonAssocRing.toAddCommGroup.{u_1} R (NonAssocRing.toNonUnitalNonAssocRing.{u_1} R (Ring.toNonAssocRing.{u_1} R (CommRing.toRing.{u_1} R _inst_11)))))) (Pi.addCommMonoid.{u_7, u_1} n (fun (ᾰ : n) => R) (fun (i : n) => AddCommGroup.toAddCommMonoid.{u_1} R (NonUnitalNonAssocRing.toAddCommGroup.{u_1} R (NonAssocRing.toNonUnitalNonAssocRing.{u_1} R (Ring.toNonAssocRing.{u_1} R (CommRing.toRing.{u_1} R _inst_11)))))) (Pi.Function.module.{u_6, u_1, u_1} m R R (Ring.toSemiring.{u_1} R (CommRing.toRing.{u_1} R _inst_11)) (AddCommGroup.toAddCommMonoid.{u_1} R (NonUnitalNonAssocRing.toAddCommGroup.{u_1} R (NonAssocRing.toNonUnitalNonAssocRing.{u_1} R (Ring.toNonAssocRing.{u_1} R (CommRing.toRing.{u_1} R _inst_11))))) (Semiring.toModule.{u_1} R (Ring.toSemiring.{u_1} R (CommRing.toRing.{u_1} R _inst_11)))) (Pi.Function.module.{u_7, u_1, u_1} n R R (Ring.toSemiring.{u_1} R (CommRing.toRing.{u_1} R _inst_11)) (AddCommGroup.toAddCommMonoid.{u_1} R (NonUnitalNonAssocRing.toAddCommGroup.{u_1} R (NonAssocRing.toNonUnitalNonAssocRing.{u_1} R (Ring.toNonAssocRing.{u_1} R (CommRing.toRing.{u_1} R _inst_11))))) (Semiring.toModule.{u_1} R (Ring.toSemiring.{u_1} R (CommRing.toRing.{u_1} R _inst_11))))) -> (Equiv.{succ u_6, succ u_7} m n)
but is expected to have type
- forall {m : Type.{u_1}} {n : Type.{u_2}} [_inst_9 : Fintype.{u_1} m] [_inst_10 : Fintype.{u_2} n] {R : Type.{u_3}} [_inst_11 : CommRing.{u_3} R] [_inst_12 : Nontrivial.{u_3} R], (LinearEquiv.{u_3, u_3, max u_1 u_3, max u_2 u_3} R R (Ring.toSemiring.{u_3} R (CommRing.toRing.{u_3} R _inst_11)) (Ring.toSemiring.{u_3} R (CommRing.toRing.{u_3} R _inst_11)) (RingHom.id.{u_3} R (NonAssocRing.toNonAssocSemiring.{u_3} R (Ring.toNonAssocRing.{u_3} R (CommRing.toRing.{u_3} R _inst_11)))) (RingHom.id.{u_3} R (Semiring.toNonAssocSemiring.{u_3} R (Ring.toSemiring.{u_3} R (CommRing.toRing.{u_3} R _inst_11)))) (RingHomInvPair.ids.{u_3} R (Ring.toSemiring.{u_3} R (CommRing.toRing.{u_3} R _inst_11))) (RingHomInvPair.ids.{u_3} R (Ring.toSemiring.{u_3} R (CommRing.toRing.{u_3} R _inst_11))) (m -> R) (n -> R) (Pi.addCommMonoid.{u_1, u_3} m (fun (ᾰ : m) => R) (fun (i : m) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u_3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_3} R (NonAssocRing.toNonUnitalNonAssocRing.{u_3} R (Ring.toNonAssocRing.{u_3} R (CommRing.toRing.{u_3} R _inst_11)))))) (Pi.addCommMonoid.{u_2, u_3} n (fun (ᾰ : n) => R) (fun (i : n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u_3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_3} R (NonAssocRing.toNonUnitalNonAssocRing.{u_3} R (Ring.toNonAssocRing.{u_3} R (CommRing.toRing.{u_3} R _inst_11)))))) (Pi.module.{u_1, u_3, u_3} m (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.269 : m) => R) R (Ring.toSemiring.{u_3} R (CommRing.toRing.{u_3} R _inst_11)) (fun (i : m) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u_3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_3} R (NonAssocRing.toNonUnitalNonAssocRing.{u_3} R (Ring.toNonAssocRing.{u_3} R (CommRing.toRing.{u_3} R _inst_11))))) (fun (i : m) => Semiring.toModule.{u_3} R (Ring.toSemiring.{u_3} R (CommRing.toRing.{u_3} R _inst_11)))) (Pi.module.{u_2, u_3, u_3} n (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.272 : n) => R) R (Ring.toSemiring.{u_3} R (CommRing.toRing.{u_3} R _inst_11)) (fun (i : n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u_3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_3} R (NonAssocRing.toNonUnitalNonAssocRing.{u_3} R (Ring.toNonAssocRing.{u_3} R (CommRing.toRing.{u_3} R _inst_11))))) (fun (i : n) => Semiring.toModule.{u_3} R (Ring.toSemiring.{u_3} R (CommRing.toRing.{u_3} R _inst_11))))) -> (Equiv.{succ u_1, succ u_2} m n)
+ forall {m : Type.{u_1}} {n : Type.{u_2}} [_inst_9 : Fintype.{u_1} m] [_inst_10 : Fintype.{u_2} n] {R : Type.{u_3}} [_inst_11 : CommRing.{u_3} R] [_inst_12 : Nontrivial.{u_3} R], (LinearEquiv.{u_3, u_3, max u_1 u_3, max u_2 u_3} R R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11)) (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11)) (RingHom.id.{u_3} R (Semiring.toNonAssocSemiring.{u_3} R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11)))) (RingHom.id.{u_3} R (Semiring.toNonAssocSemiring.{u_3} R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11)))) (RingHomInvPair.ids.{u_3} R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11))) (RingHomInvPair.ids.{u_3} R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11))) (m -> R) (n -> R) (Pi.addCommMonoid.{u_1, u_3} m (fun (ᾰ : m) => R) (fun (i : m) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u_3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_3} R (NonAssocRing.toNonUnitalNonAssocRing.{u_3} R (Ring.toNonAssocRing.{u_3} R (CommRing.toRing.{u_3} R _inst_11)))))) (Pi.addCommMonoid.{u_2, u_3} n (fun (ᾰ : n) => R) (fun (i : n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u_3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_3} R (NonAssocRing.toNonUnitalNonAssocRing.{u_3} R (Ring.toNonAssocRing.{u_3} R (CommRing.toRing.{u_3} R _inst_11)))))) (Pi.module.{u_1, u_3, u_3} m (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.269 : m) => R) R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11)) (fun (i : m) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u_3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_3} R (NonAssocRing.toNonUnitalNonAssocRing.{u_3} R (Ring.toNonAssocRing.{u_3} R (CommRing.toRing.{u_3} R _inst_11))))) (fun (i : m) => Semiring.toModule.{u_3} R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11)))) (Pi.module.{u_2, u_3, u_3} n (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.272 : n) => R) R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11)) (fun (i : n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u_3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_3} R (NonAssocRing.toNonUnitalNonAssocRing.{u_3} R (Ring.toNonAssocRing.{u_3} R (CommRing.toRing.{u_3} R _inst_11))))) (fun (i : n) => Semiring.toModule.{u_3} R (CommSemiring.toSemiring.{u_3} R (CommRing.toCommSemiring.{u_3} R _inst_11))))) -> (Equiv.{succ u_1, succ u_2} m n)
Case conversion may be inaccurate. Consider using '#align equiv_of_pi_lequiv_pi equivOfPiLEquivPiₓ'. -/
/-- If `R^m` and `R^n` are linearly equivalent, then `m` and `n` are also equivalent. -/
def equivOfPiLEquivPi {R : Type _} [CommRing R] [Nontrivial R] (e : (m → R) ≃ₗ[R] n → R) : m ≃ n :=
@@ -93,7 +93,7 @@ namespace Matrix
lean 3 declaration is
forall {A : Type.{u_5}} [_inst_8 : CommRing.{u_5} A] {m : Type.{u_6}} {n : Type.{u_7}} [_inst_9 : Fintype.{u_6} m] [_inst_10 : Fintype.{u_7} n] [_inst_11 : Nontrivial.{u_5} A] [_inst_12 : DecidableEq.{succ u_6} m] [_inst_13 : DecidableEq.{succ u_7} n] {M : Matrix.{u_6, u_7, u_5} m n A} {M' : Matrix.{u_7, u_6, u_5} n m A}, (Eq.{succ (max u_6 u_5)} (Matrix.{u_6, u_6, u_5} m m A) (Matrix.mul.{u_5, u_6, u_7, u_6} m n m A _inst_10 (Distrib.toHasMul.{u_5} A (Ring.toDistrib.{u_5} A (CommRing.toRing.{u_5} A _inst_8))) (AddCommGroup.toAddCommMonoid.{u_5} A (NonUnitalNonAssocRing.toAddCommGroup.{u_5} A (NonAssocRing.toNonUnitalNonAssocRing.{u_5} A (Ring.toNonAssocRing.{u_5} A (CommRing.toRing.{u_5} A _inst_8))))) M M') (OfNat.ofNat.{max u_6 u_5} (Matrix.{u_6, u_6, u_5} m m A) 1 (OfNat.mk.{max u_6 u_5} (Matrix.{u_6, u_6, u_5} m m A) 1 (One.one.{max u_6 u_5} (Matrix.{u_6, u_6, u_5} m m A) (Matrix.hasOne.{u_5, u_6} m A (fun (a : m) (b : m) => _inst_12 a b) (MulZeroClass.toHasZero.{u_5} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u_5} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_5} A (NonAssocRing.toNonUnitalNonAssocRing.{u_5} A (Ring.toNonAssocRing.{u_5} A (CommRing.toRing.{u_5} A _inst_8)))))) (AddMonoidWithOne.toOne.{u_5} A (AddGroupWithOne.toAddMonoidWithOne.{u_5} A (AddCommGroupWithOne.toAddGroupWithOne.{u_5} A (Ring.toAddCommGroupWithOne.{u_5} A (CommRing.toRing.{u_5} A _inst_8)))))))))) -> (Eq.{succ (max u_7 u_5)} (Matrix.{u_7, u_7, u_5} n n A) (Matrix.mul.{u_5, u_7, u_6, u_7} n m n A _inst_9 (Distrib.toHasMul.{u_5} A (Ring.toDistrib.{u_5} A (CommRing.toRing.{u_5} A _inst_8))) (AddCommGroup.toAddCommMonoid.{u_5} A (NonUnitalNonAssocRing.toAddCommGroup.{u_5} A (NonAssocRing.toNonUnitalNonAssocRing.{u_5} A (Ring.toNonAssocRing.{u_5} A (CommRing.toRing.{u_5} A _inst_8))))) M' M) (OfNat.ofNat.{max u_7 u_5} (Matrix.{u_7, u_7, u_5} n n A) 1 (OfNat.mk.{max u_7 u_5} (Matrix.{u_7, u_7, u_5} n n A) 1 (One.one.{max u_7 u_5} (Matrix.{u_7, u_7, u_5} n n A) (Matrix.hasOne.{u_5, u_7} n A (fun (a : n) (b : n) => _inst_13 a b) (MulZeroClass.toHasZero.{u_5} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u_5} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_5} A (NonAssocRing.toNonUnitalNonAssocRing.{u_5} A (Ring.toNonAssocRing.{u_5} A (CommRing.toRing.{u_5} A _inst_8)))))) (AddMonoidWithOne.toOne.{u_5} A (AddGroupWithOne.toAddMonoidWithOne.{u_5} A (AddCommGroupWithOne.toAddGroupWithOne.{u_5} A (Ring.toAddCommGroupWithOne.{u_5} A (CommRing.toRing.{u_5} A _inst_8)))))))))) -> (Equiv.{succ u_6, succ u_7} m n)
but is expected to have type
- forall {A : Type.{u_1}} [_inst_8 : CommRing.{u_1} A] {m : Type.{u_2}} {n : Type.{u_3}} [_inst_9 : Fintype.{u_2} m] [_inst_10 : Fintype.{u_3} n] [_inst_11 : Nontrivial.{u_1} A] [_inst_12 : DecidableEq.{succ u_2} m] [_inst_13 : DecidableEq.{succ u_3} n] {M : Matrix.{u_2, u_3, u_1} m n A} {M' : Matrix.{u_3, u_2, u_1} n m A}, (Eq.{max (succ u_1) (succ u_2)} (Matrix.{u_2, u_2, u_1} m m A) (Matrix.mul.{u_1, u_2, u_3, u_2} m n m A _inst_10 (NonUnitalNonAssocRing.toMul.{u_1} A (NonAssocRing.toNonUnitalNonAssocRing.{u_1} A (Ring.toNonAssocRing.{u_1} A (CommRing.toRing.{u_1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u_1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_1} A (NonAssocRing.toNonUnitalNonAssocRing.{u_1} A (Ring.toNonAssocRing.{u_1} A (CommRing.toRing.{u_1} A _inst_8))))) M M') (OfNat.ofNat.{max u_1 u_2} (Matrix.{u_2, u_2, u_1} m m A) 1 (One.toOfNat1.{max u_1 u_2} (Matrix.{u_2, u_2, u_1} m m A) (Matrix.one.{u_1, u_2} m A (fun (a : m) (b : m) => _inst_12 a b) (CommMonoidWithZero.toZero.{u_1} A (CommSemiring.toCommMonoidWithZero.{u_1} A (CommRing.toCommSemiring.{u_1} A _inst_8))) (NonAssocRing.toOne.{u_1} A (Ring.toNonAssocRing.{u_1} A (CommRing.toRing.{u_1} A _inst_8))))))) -> (Eq.{max (succ u_1) (succ u_3)} (Matrix.{u_3, u_3, u_1} n n A) (Matrix.mul.{u_1, u_3, u_2, u_3} n m n A _inst_9 (NonUnitalNonAssocRing.toMul.{u_1} A (NonAssocRing.toNonUnitalNonAssocRing.{u_1} A (Ring.toNonAssocRing.{u_1} A (CommRing.toRing.{u_1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u_1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_1} A (NonAssocRing.toNonUnitalNonAssocRing.{u_1} A (Ring.toNonAssocRing.{u_1} A (CommRing.toRing.{u_1} A _inst_8))))) M' M) (OfNat.ofNat.{max u_1 u_3} (Matrix.{u_3, u_3, u_1} n n A) 1 (One.toOfNat1.{max u_1 u_3} (Matrix.{u_3, u_3, u_1} n n A) (Matrix.one.{u_1, u_3} n A (fun (a : n) (b : n) => _inst_13 a b) (CommMonoidWithZero.toZero.{u_1} A (CommSemiring.toCommMonoidWithZero.{u_1} A (CommRing.toCommSemiring.{u_1} A _inst_8))) (NonAssocRing.toOne.{u_1} A (Ring.toNonAssocRing.{u_1} A (CommRing.toRing.{u_1} A _inst_8))))))) -> (Equiv.{succ u_2, succ u_3} m n)
+ forall {A : Type.{u_1}} [_inst_8 : CommRing.{u_1} A] {m : Type.{u_2}} {n : Type.{u_3}} [_inst_9 : Fintype.{u_2} m] [_inst_10 : Fintype.{u_3} n] [_inst_11 : Nontrivial.{u_1} A] [_inst_12 : DecidableEq.{succ u_2} m] [_inst_13 : DecidableEq.{succ u_3} n] {M : Matrix.{u_2, u_3, u_1} m n A} {M' : Matrix.{u_3, u_2, u_1} n m A}, (Eq.{max (succ u_1) (succ u_2)} (Matrix.{u_2, u_2, u_1} m m A) (Matrix.mul.{u_1, u_2, u_3, u_2} m n m A _inst_10 (NonUnitalNonAssocRing.toMul.{u_1} A (NonAssocRing.toNonUnitalNonAssocRing.{u_1} A (Ring.toNonAssocRing.{u_1} A (CommRing.toRing.{u_1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u_1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_1} A (NonAssocRing.toNonUnitalNonAssocRing.{u_1} A (Ring.toNonAssocRing.{u_1} A (CommRing.toRing.{u_1} A _inst_8))))) M M') (OfNat.ofNat.{max u_1 u_2} (Matrix.{u_2, u_2, u_1} m m A) 1 (One.toOfNat1.{max u_1 u_2} (Matrix.{u_2, u_2, u_1} m m A) (Matrix.one.{u_1, u_2} m A (fun (a : m) (b : m) => _inst_12 a b) (CommMonoidWithZero.toZero.{u_1} A (CommSemiring.toCommMonoidWithZero.{u_1} A (CommRing.toCommSemiring.{u_1} A _inst_8))) (Semiring.toOne.{u_1} A (CommSemiring.toSemiring.{u_1} A (CommRing.toCommSemiring.{u_1} A _inst_8))))))) -> (Eq.{max (succ u_1) (succ u_3)} (Matrix.{u_3, u_3, u_1} n n A) (Matrix.mul.{u_1, u_3, u_2, u_3} n m n A _inst_9 (NonUnitalNonAssocRing.toMul.{u_1} A (NonAssocRing.toNonUnitalNonAssocRing.{u_1} A (Ring.toNonAssocRing.{u_1} A (CommRing.toRing.{u_1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u_1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_1} A (NonAssocRing.toNonUnitalNonAssocRing.{u_1} A (Ring.toNonAssocRing.{u_1} A (CommRing.toRing.{u_1} A _inst_8))))) M' M) (OfNat.ofNat.{max u_1 u_3} (Matrix.{u_3, u_3, u_1} n n A) 1 (One.toOfNat1.{max u_1 u_3} (Matrix.{u_3, u_3, u_1} n n A) (Matrix.one.{u_1, u_3} n A (fun (a : n) (b : n) => _inst_13 a b) (CommMonoidWithZero.toZero.{u_1} A (CommSemiring.toCommMonoidWithZero.{u_1} A (CommRing.toCommSemiring.{u_1} A _inst_8))) (Semiring.toOne.{u_1} A (CommSemiring.toSemiring.{u_1} A (CommRing.toCommSemiring.{u_1} A _inst_8))))))) -> (Equiv.{succ u_2, succ u_3} m n)
Case conversion may be inaccurate. Consider using '#align matrix.index_equiv_of_inv Matrix.indexEquivOfInvₓ'. -/
/-- If `M` and `M'` are each other's inverse matrices, they are square matrices up to
equivalence of types. -/
@@ -116,7 +116,7 @@ theorem det_comm [DecidableEq n] (M N : Matrix n n A) : det (M ⬝ N) = det (N
lean 3 declaration is
forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {m : Type.{u2}} {n : Type.{u3}} [_inst_9 : Fintype.{u2} m] [_inst_10 : Fintype.{u3} n] [_inst_11 : DecidableEq.{succ u2} m] [_inst_12 : DecidableEq.{succ u3} n] {M : Matrix.{u3, u2, u1} n m A} {N : Matrix.{u2, u3, u1} m n A} {M' : Matrix.{u2, u3, u1} m n A}, (Eq.{succ (max u3 u1)} (Matrix.{u3, u3, u1} n n A) (Matrix.mul.{u1, u3, u2, u3} n m n A _inst_9 (Distrib.toHasMul.{u1} A (Ring.toDistrib.{u1} A (CommRing.toRing.{u1} A _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M M') (OfNat.ofNat.{max u3 u1} (Matrix.{u3, u3, u1} n n A) 1 (OfNat.mk.{max u3 u1} (Matrix.{u3, u3, u1} n n A) 1 (One.one.{max u3 u1} (Matrix.{u3, u3, u1} n n A) (Matrix.hasOne.{u1, u3} n A (fun (a : n) (b : n) => _inst_12 a b) (MulZeroClass.toHasZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddMonoidWithOne.toOne.{u1} A (AddGroupWithOne.toAddMonoidWithOne.{u1} A (AddCommGroupWithOne.toAddGroupWithOne.{u1} A (Ring.toAddCommGroupWithOne.{u1} A (CommRing.toRing.{u1} A _inst_8)))))))))) -> (Eq.{succ (max u2 u1)} (Matrix.{u2, u2, u1} m m A) (Matrix.mul.{u1, u2, u3, u2} m n m A _inst_10 (Distrib.toHasMul.{u1} A (Ring.toDistrib.{u1} A (CommRing.toRing.{u1} A _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M' M) (OfNat.ofNat.{max u2 u1} (Matrix.{u2, u2, u1} m m A) 1 (OfNat.mk.{max u2 u1} (Matrix.{u2, u2, u1} m m A) 1 (One.one.{max u2 u1} (Matrix.{u2, u2, u1} m m A) (Matrix.hasOne.{u1, u2} m A (fun (a : m) (b : m) => _inst_11 a b) (MulZeroClass.toHasZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddMonoidWithOne.toOne.{u1} A (AddGroupWithOne.toAddMonoidWithOne.{u1} A (AddCommGroupWithOne.toAddGroupWithOne.{u1} A (Ring.toAddCommGroupWithOne.{u1} A (CommRing.toRing.{u1} A _inst_8)))))))))) -> (Eq.{succ u1} A (Matrix.det.{u1, u3} n (fun (a : n) (b : n) => _inst_12 a b) _inst_10 A _inst_8 (Matrix.mul.{u1, u3, u2, u3} n m n A _inst_9 (Distrib.toHasMul.{u1} A (Ring.toDistrib.{u1} A (CommRing.toRing.{u1} A _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M N)) (Matrix.det.{u1, u2} m (fun (a : m) (b : m) => _inst_11 a b) _inst_9 A _inst_8 (Matrix.mul.{u1, u2, u3, u2} m n m A _inst_10 (Distrib.toHasMul.{u1} A (Ring.toDistrib.{u1} A (CommRing.toRing.{u1} A _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) N M)))
but is expected to have type
- forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {m : Type.{u3}} {n : Type.{u2}} [_inst_9 : Fintype.{u3} m] [_inst_10 : Fintype.{u2} n] [_inst_11 : DecidableEq.{succ u3} m] [_inst_12 : DecidableEq.{succ u2} n] {M : Matrix.{u2, u3, u1} n m A} {N : Matrix.{u3, u2, u1} m n A} {M' : Matrix.{u3, u2, u1} m n A}, (Eq.{max (succ u1) (succ u2)} (Matrix.{u2, u2, u1} n n A) (Matrix.mul.{u1, u2, u3, u2} n m n A _inst_9 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M M') (OfNat.ofNat.{max u1 u2} (Matrix.{u2, u2, u1} n n A) 1 (One.toOfNat1.{max u1 u2} (Matrix.{u2, u2, u1} n n A) (Matrix.one.{u1, u2} n A (fun (a : n) (b : n) => _inst_12 a b) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (NonAssocRing.toOne.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))))) -> (Eq.{max (succ u1) (succ u3)} (Matrix.{u3, u3, u1} m m A) (Matrix.mul.{u1, u3, u2, u3} m n m A _inst_10 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M' M) (OfNat.ofNat.{max u1 u3} (Matrix.{u3, u3, u1} m m A) 1 (One.toOfNat1.{max u1 u3} (Matrix.{u3, u3, u1} m m A) (Matrix.one.{u1, u3} m A (fun (a : m) (b : m) => _inst_11 a b) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (NonAssocRing.toOne.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))))) -> (Eq.{succ u1} A (Matrix.det.{u1, u2} n (fun (a : n) (b : n) => _inst_12 a b) _inst_10 A _inst_8 (Matrix.mul.{u1, u2, u3, u2} n m n A _inst_9 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M N)) (Matrix.det.{u1, u3} m (fun (a : m) (b : m) => _inst_11 a b) _inst_9 A _inst_8 (Matrix.mul.{u1, u3, u2, u3} m n m A _inst_10 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) N M)))
+ forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {m : Type.{u3}} {n : Type.{u2}} [_inst_9 : Fintype.{u3} m] [_inst_10 : Fintype.{u2} n] [_inst_11 : DecidableEq.{succ u3} m] [_inst_12 : DecidableEq.{succ u2} n] {M : Matrix.{u2, u3, u1} n m A} {N : Matrix.{u3, u2, u1} m n A} {M' : Matrix.{u3, u2, u1} m n A}, (Eq.{max (succ u1) (succ u2)} (Matrix.{u2, u2, u1} n n A) (Matrix.mul.{u1, u2, u3, u2} n m n A _inst_9 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M M') (OfNat.ofNat.{max u1 u2} (Matrix.{u2, u2, u1} n n A) 1 (One.toOfNat1.{max u1 u2} (Matrix.{u2, u2, u1} n n A) (Matrix.one.{u1, u2} n A (fun (a : n) (b : n) => _inst_12 a b) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (Semiring.toOne.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) -> (Eq.{max (succ u1) (succ u3)} (Matrix.{u3, u3, u1} m m A) (Matrix.mul.{u1, u3, u2, u3} m n m A _inst_10 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M' M) (OfNat.ofNat.{max u1 u3} (Matrix.{u3, u3, u1} m m A) 1 (One.toOfNat1.{max u1 u3} (Matrix.{u3, u3, u1} m m A) (Matrix.one.{u1, u3} m A (fun (a : m) (b : m) => _inst_11 a b) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (Semiring.toOne.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) -> (Eq.{succ u1} A (Matrix.det.{u1, u2} n (fun (a : n) (b : n) => _inst_12 a b) _inst_10 A _inst_8 (Matrix.mul.{u1, u2, u3, u2} n m n A _inst_9 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M N)) (Matrix.det.{u1, u3} m (fun (a : m) (b : m) => _inst_11 a b) _inst_9 A _inst_8 (Matrix.mul.{u1, u3, u2, u3} m n m A _inst_10 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) N M)))
Case conversion may be inaccurate. Consider using '#align matrix.det_comm' Matrix.det_comm'ₓ'. -/
/-- If there exists a two-sided inverse `M'` for `M` (indexed differently),
then `det (N ⬝ M) = det (M ⬝ N)`. -/
@@ -135,7 +135,7 @@ theorem det_comm' [DecidableEq m] [DecidableEq n] {M : Matrix n m A} {N : Matrix
lean 3 declaration is
forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {m : Type.{u2}} {n : Type.{u3}} [_inst_9 : Fintype.{u2} m] [_inst_10 : Fintype.{u3} n] [_inst_11 : DecidableEq.{succ u2} m] [_inst_12 : DecidableEq.{succ u3} n] {M : Matrix.{u2, u3, u1} m n A} {M' : Matrix.{u3, u2, u1} n m A} {N : Matrix.{u3, u3, u1} n n A}, (Eq.{succ (max u2 u1)} (Matrix.{u2, u2, u1} m m A) (Matrix.mul.{u1, u2, u3, u2} m n m A _inst_10 (Distrib.toHasMul.{u1} A (Ring.toDistrib.{u1} A (CommRing.toRing.{u1} A _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M M') (OfNat.ofNat.{max u2 u1} (Matrix.{u2, u2, u1} m m A) 1 (OfNat.mk.{max u2 u1} (Matrix.{u2, u2, u1} m m A) 1 (One.one.{max u2 u1} (Matrix.{u2, u2, u1} m m A) (Matrix.hasOne.{u1, u2} m A (fun (a : m) (b : m) => _inst_11 a b) (MulZeroClass.toHasZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddMonoidWithOne.toOne.{u1} A (AddGroupWithOne.toAddMonoidWithOne.{u1} A (AddCommGroupWithOne.toAddGroupWithOne.{u1} A (Ring.toAddCommGroupWithOne.{u1} A (CommRing.toRing.{u1} A _inst_8)))))))))) -> (Eq.{succ (max u3 u1)} (Matrix.{u3, u3, u1} n n A) (Matrix.mul.{u1, u3, u2, u3} n m n A _inst_9 (Distrib.toHasMul.{u1} A (Ring.toDistrib.{u1} A (CommRing.toRing.{u1} A _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M' M) (OfNat.ofNat.{max u3 u1} (Matrix.{u3, u3, u1} n n A) 1 (OfNat.mk.{max u3 u1} (Matrix.{u3, u3, u1} n n A) 1 (One.one.{max u3 u1} (Matrix.{u3, u3, u1} n n A) (Matrix.hasOne.{u1, u3} n A (fun (a : n) (b : n) => _inst_12 a b) (MulZeroClass.toHasZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddMonoidWithOne.toOne.{u1} A (AddGroupWithOne.toAddMonoidWithOne.{u1} A (AddCommGroupWithOne.toAddGroupWithOne.{u1} A (Ring.toAddCommGroupWithOne.{u1} A (CommRing.toRing.{u1} A _inst_8)))))))))) -> (Eq.{succ u1} A (Matrix.det.{u1, u2} m (fun (a : m) (b : m) => _inst_11 a b) _inst_9 A _inst_8 (Matrix.mul.{u1, u2, u3, u2} m n m A _inst_10 (Distrib.toHasMul.{u1} A (Ring.toDistrib.{u1} A (CommRing.toRing.{u1} A _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Matrix.mul.{u1, u2, u3, u3} m n n A _inst_10 (Distrib.toHasMul.{u1} A (Ring.toDistrib.{u1} A (CommRing.toRing.{u1} A _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M N) M')) (Matrix.det.{u1, u3} n (fun (a : n) (b : n) => _inst_12 a b) _inst_10 A _inst_8 N))
but is expected to have type
- forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {m : Type.{u3}} {n : Type.{u2}} [_inst_9 : Fintype.{u3} m] [_inst_10 : Fintype.{u2} n] [_inst_11 : DecidableEq.{succ u3} m] [_inst_12 : DecidableEq.{succ u2} n] {M : Matrix.{u3, u2, u1} m n A} {M' : Matrix.{u2, u3, u1} n m A} {N : Matrix.{u2, u2, u1} n n A}, (Eq.{max (succ u1) (succ u3)} (Matrix.{u3, u3, u1} m m A) (Matrix.mul.{u1, u3, u2, u3} m n m A _inst_10 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M M') (OfNat.ofNat.{max u1 u3} (Matrix.{u3, u3, u1} m m A) 1 (One.toOfNat1.{max u1 u3} (Matrix.{u3, u3, u1} m m A) (Matrix.one.{u1, u3} m A (fun (a : m) (b : m) => _inst_11 a b) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (NonAssocRing.toOne.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))))) -> (Eq.{max (succ u1) (succ u2)} (Matrix.{u2, u2, u1} n n A) (Matrix.mul.{u1, u2, u3, u2} n m n A _inst_9 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M' M) (OfNat.ofNat.{max u1 u2} (Matrix.{u2, u2, u1} n n A) 1 (One.toOfNat1.{max u1 u2} (Matrix.{u2, u2, u1} n n A) (Matrix.one.{u1, u2} n A (fun (a : n) (b : n) => _inst_12 a b) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (NonAssocRing.toOne.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))))) -> (Eq.{succ u1} A (Matrix.det.{u1, u3} m (fun (a : m) (b : m) => _inst_11 a b) _inst_9 A _inst_8 (Matrix.mul.{u1, u3, u2, u3} m n m A _inst_10 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Matrix.mul.{u1, u3, u2, u2} m n n A _inst_10 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M N) M')) (Matrix.det.{u1, u2} n (fun (a : n) (b : n) => _inst_12 a b) _inst_10 A _inst_8 N))
+ forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {m : Type.{u3}} {n : Type.{u2}} [_inst_9 : Fintype.{u3} m] [_inst_10 : Fintype.{u2} n] [_inst_11 : DecidableEq.{succ u3} m] [_inst_12 : DecidableEq.{succ u2} n] {M : Matrix.{u3, u2, u1} m n A} {M' : Matrix.{u2, u3, u1} n m A} {N : Matrix.{u2, u2, u1} n n A}, (Eq.{max (succ u1) (succ u3)} (Matrix.{u3, u3, u1} m m A) (Matrix.mul.{u1, u3, u2, u3} m n m A _inst_10 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M M') (OfNat.ofNat.{max u1 u3} (Matrix.{u3, u3, u1} m m A) 1 (One.toOfNat1.{max u1 u3} (Matrix.{u3, u3, u1} m m A) (Matrix.one.{u1, u3} m A (fun (a : m) (b : m) => _inst_11 a b) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (Semiring.toOne.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) -> (Eq.{max (succ u1) (succ u2)} (Matrix.{u2, u2, u1} n n A) (Matrix.mul.{u1, u2, u3, u2} n m n A _inst_9 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M' M) (OfNat.ofNat.{max u1 u2} (Matrix.{u2, u2, u1} n n A) 1 (One.toOfNat1.{max u1 u2} (Matrix.{u2, u2, u1} n n A) (Matrix.one.{u1, u2} n A (fun (a : n) (b : n) => _inst_12 a b) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (Semiring.toOne.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) -> (Eq.{succ u1} A (Matrix.det.{u1, u3} m (fun (a : m) (b : m) => _inst_11 a b) _inst_9 A _inst_8 (Matrix.mul.{u1, u3, u2, u3} m n m A _inst_10 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Matrix.mul.{u1, u3, u2, u2} m n n A _inst_10 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M N) M')) (Matrix.det.{u1, u2} n (fun (a : n) (b : n) => _inst_12 a b) _inst_10 A _inst_8 N))
Case conversion may be inaccurate. Consider using '#align matrix.det_conj_of_mul_eq_one Matrix.det_conj_of_mul_eq_oneₓ'. -/
/-- If `M'` is a two-sided inverse for `M` (indexed differently), `det (M ⬝ N ⬝ M') = det N`.
@@ -163,7 +163,7 @@ variable {κ : Type _} [Fintype κ]
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u3}} [_inst_8 : CommRing.{u3} A] [_inst_9 : Module.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {κ : Type.{u4}} [_inst_10 : Fintype.{u4} κ] [_inst_11 : DecidableEq.{succ u4} κ] (b : Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (c : Basis.{u4, u3, u1} κ A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u3} A (Matrix.det.{u3, u2} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (coeFn.{max (succ u1) (succ (max u2 u3)), max (succ u1) (succ (max u2 u3))} (LinearEquiv.{u3, u3, u1, max u2 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (fun (_x : LinearEquiv.{u3, u3, u1, max u2 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) => (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> (Matrix.{u2, u2, u3} ι ι A)) (LinearEquiv.hasCoeToFun.{u3, u3, u1, max u2 u3} A A (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))) (LinearMap.toMatrix.{u3, u2, u2, u1, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f)) (Matrix.det.{u3, u4} κ (fun (a : κ) (b : κ) => _inst_11 a b) _inst_10 A _inst_8 (coeFn.{max (succ u1) (succ (max u4 u3)), max (succ u1) (succ (max u4 u3))} (LinearEquiv.{u3, u3, u1, max u4 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u3} κ κ A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u4, u4, u3} κ κ A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (fun (_x : LinearEquiv.{u3, u3, u1, max u4 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u3} κ κ A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u4, u4, u3} κ κ A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) => (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> (Matrix.{u4, u4, u3} κ κ A)) (LinearEquiv.hasCoeToFun.{u3, u3, u1, max u4 u3} A A (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u3} κ κ A) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u4, u4, u3} κ κ A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))) (LinearMap.toMatrix.{u3, u4, u4, u1, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) κ κ _inst_10 _inst_10 (fun (a : κ) (b : κ) => _inst_11 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 c c) f))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {κ : Type.{u4}} [_inst_10 : Fintype.{u4} κ] [_inst_11 : DecidableEq.{succ u4} κ] (b : Basis.{u3, u2, u1} ι A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (c : Basis.{u4, u2, u1} κ A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} A (Matrix.det.{u2, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => Matrix.{u3, u3, u2} ι ι A) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (SMulZeroClass.toSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toZero.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toAddZeroClass.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u1 u3) u2} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u1 u3) u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u3, u3, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f)) (Matrix.det.{u2, u4} κ (fun (a : κ) (b : κ) => _inst_11 a b) _inst_10 A _inst_8 (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), succ u1, max (succ u2) (succ u4)} (LinearEquiv.{u2, u2, u1, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => Matrix.{u4, u4, u2} κ κ A) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u4, u2, u1, max u2 u4} (LinearEquiv.{u2, u2, u1, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (SMulZeroClass.toSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u2 u4} A (Matrix.{u4, u4, u2} κ κ A) (AddMonoid.toZero.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u4} A (Matrix.{u4, u4, u2} κ κ A) (AddMonoid.toAddZeroClass.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u2 u4} A (Matrix.{u4, u4, u2} κ κ A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u2 u4} A (Matrix.{u4, u4, u2} κ κ A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u4, u2, u1, max u2 u4} (LinearEquiv.{u2, u2, u1, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u2 u4} A (Matrix.{u4, u4, u2} κ κ A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u2 u4, max (max u1 u2) u4} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearEquiv.{u2, u2, u1, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u2 u4, max (max u1 u2) u4} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearEquiv.{u2, u2, u1, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u2 u4} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u4, u4, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) κ κ _inst_10 _inst_10 (fun (a : κ) (b : κ) => _inst_11 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 c c) f))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {κ : Type.{u4}} [_inst_10 : Fintype.{u4} κ] [_inst_11 : DecidableEq.{succ u4} κ] (b : Basis.{u3, u2, u1} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (c : Basis.{u4, u2, u1} κ A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} A (Matrix.det.{u2, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => Matrix.{u3, u3, u2} ι ι A) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (SMulZeroClass.toSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toZero.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toAddZeroClass.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u1 u3) u2} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u1 u3) u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u3, u3, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f)) (Matrix.det.{u2, u4} κ (fun (a : κ) (b : κ) => _inst_11 a b) _inst_10 A _inst_8 (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), succ u1, max (succ u2) (succ u4)} (LinearEquiv.{u2, u2, u1, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => Matrix.{u4, u4, u2} κ κ A) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u4, u2, u1, max u2 u4} (LinearEquiv.{u2, u2, u1, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (SMulZeroClass.toSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u2 u4} A (Matrix.{u4, u4, u2} κ κ A) (AddMonoid.toZero.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u4} A (Matrix.{u4, u4, u2} κ κ A) (AddMonoid.toAddZeroClass.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u2 u4} A (Matrix.{u4, u4, u2} κ κ A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u2 u4} A (Matrix.{u4, u4, u2} κ κ A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u4, u2, u1, max u2 u4} (LinearEquiv.{u2, u2, u1, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u2 u4} A (Matrix.{u4, u4, u2} κ κ A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u2 u4, max (max u1 u2) u4} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearEquiv.{u2, u2, u1, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u2 u4, max (max u1 u2) u4} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearEquiv.{u2, u2, u1, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u2 u4} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u4, u4, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) κ κ _inst_10 _inst_10 (fun (a : κ) (b : κ) => _inst_11 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 c c) f))
Case conversion may be inaccurate. Consider using '#align linear_map.det_to_matrix_eq_det_to_matrix LinearMap.det_toMatrix_eq_det_toMatrixₓ'. -/
/-- The determinant of `linear_map.to_matrix` does not depend on the choice of basis. -/
theorem det_toMatrix_eq_det_toMatrix [DecidableEq κ] (b : Basis ι A M) (c : Basis κ A M)
@@ -194,7 +194,7 @@ irreducible_def detAux : Trunc (Basis ι A M) → (M →ₗ[A] M) →* A :=
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u3}} [_inst_8 : CommRing.{u3} A] [_inst_9 : Module.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u3} A (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.detAux.{u1, u2, u3} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 (Trunc.mk.{max (succ u2) (succ u3) (succ u1)} (Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) b)) f) (Matrix.det.{u3, u2} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (coeFn.{max (succ u1) (succ (max u2 u3)), max (succ u1) (succ (max u2 u3))} (LinearEquiv.{u3, u3, u1, max u2 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (fun (_x : LinearEquiv.{u3, u3, u1, max u2 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) => (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> (Matrix.{u2, u2, u3} ι ι A)) (LinearEquiv.hasCoeToFun.{u3, u3, u1, max u2 u3} A A (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))) (LinearMap.toMatrix.{u3, u2, u2, u1, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : Basis.{u3, u2, u1} ι A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.detAux.{u1, u3, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 (Trunc.mk.{max (max (succ u2) (succ u3)) (succ u1)} (Basis.{u3, u2, u1} ι A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) b)) f) (Matrix.det.{u2, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => Matrix.{u3, u3, u2} ι ι A) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (SMulZeroClass.toSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toZero.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toAddZeroClass.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u1 u3) u2} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u1 u3) u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u3, u3, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : Basis.{u3, u2, u1} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.detAux.{u1, u3, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 (Trunc.mk.{max (max (succ u2) (succ u3)) (succ u1)} (Basis.{u3, u2, u1} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) b)) f) (Matrix.det.{u2, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => Matrix.{u3, u3, u2} ι ι A) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (SMulZeroClass.toSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toZero.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toAddZeroClass.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u1 u3) u2} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u1 u3) u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u3, u3, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f))
Case conversion may be inaccurate. Consider using '#align linear_map.det_aux_def LinearMap.detAux_def'ₓ'. -/
/-- Unfold lemma for `det_aux`.
@@ -211,7 +211,7 @@ theorem detAux_def' (b : Basis ι A M) (f : M →ₗ[A] M) :
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u3}} [_inst_8 : CommRing.{u3} A] [_inst_9 : Module.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι' : Type.{u4}} [_inst_11 : Fintype.{u4} ι'] [_inst_12 : DecidableEq.{succ u4} ι'] (tb : Trunc.{max (succ u2) (succ u3) (succ u1)} (Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (b' : Basis.{u4, u3, u1} ι' A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u3} A (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.detAux.{u1, u2, u3} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 tb) f) (Matrix.det.{u3, u4} ι' (fun (a : ι') (b : ι') => _inst_12 a b) _inst_11 A _inst_8 (coeFn.{max (succ u1) (succ (max u4 u3)), max (succ u1) (succ (max u4 u3))} (LinearEquiv.{u3, u3, u1, max u4 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u3} ι' ι' A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u4, u4, u3} ι' ι' A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (fun (_x : LinearEquiv.{u3, u3, u1, max u4 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u3} ι' ι' A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u4, u4, u3} ι' ι' A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) => (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> (Matrix.{u4, u4, u3} ι' ι' A)) (LinearEquiv.hasCoeToFun.{u3, u3, u1, max u4 u3} A A (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u3} ι' ι' A) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u4, u4, u3} ι' ι' A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))) (LinearMap.toMatrix.{u3, u4, u4, u1, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) ι' ι' _inst_11 _inst_11 (fun (a : ι') (b : ι') => _inst_12 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b' b') f))
but is expected to have type
- forall {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] {ι' : Type.{u4}} [_inst_11 : Fintype.{u4} ι'] [_inst_12 : DecidableEq.{succ u4} ι'] (tb : Trunc.{max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u1, u2, u3} ι A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (b' : Basis.{u4, u2, u3} ι' A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.detAux.{u3, u1, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 tb) f) (Matrix.det.{u2, u4} ι' (fun (a : ι') (b : ι') => _inst_12 a b) _inst_11 A _inst_8 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u3, max (succ u2) (succ u4)} (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => Matrix.{u4, u4, u2} ι' ι' A) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u4, u2, u3, max u2 u4} (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (SMulZeroClass.toSMul.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (AddMonoid.toZero.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (AddMonoid.toAddZeroClass.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u4, u2, u3, max u2 u4} (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u3, max u2 u4, max (max u3 u2) u4} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u3, max u2 u4, max (max u3 u2) u4} A A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u3, max u2 u4} A A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u4, u4, u3, u3} A (CommRing.toCommSemiring.{u2} A _inst_8) ι' ι' _inst_11 _inst_11 (fun (a : ι') (b : ι') => _inst_12 a b) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 b' b') f))
+ forall {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] {ι' : Type.{u4}} [_inst_11 : Fintype.{u4} ι'] [_inst_12 : DecidableEq.{succ u4} ι'] (tb : Trunc.{max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u1, u2, u3} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (b' : Basis.{u4, u2, u3} ι' A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.detAux.{u3, u1, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 tb) f) (Matrix.det.{u2, u4} ι' (fun (a : ι') (b : ι') => _inst_12 a b) _inst_11 A _inst_8 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u3, max (succ u2) (succ u4)} (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => Matrix.{u4, u4, u2} ι' ι' A) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u4, u2, u3, max u2 u4} (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (SMulZeroClass.toSMul.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (AddMonoid.toZero.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (AddMonoid.toAddZeroClass.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u4, u2, u3, max u2 u4} (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u3, max u2 u4, max (max u3 u2) u4} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u3, max u2 u4, max (max u3 u2) u4} A A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u3, max u2 u4} A A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u4, u4, u3, u3} A (CommRing.toCommSemiring.{u2} A _inst_8) ι' ι' _inst_11 _inst_11 (fun (a : ι') (b : ι') => _inst_12 a b) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 b' b') f))
Case conversion may be inaccurate. Consider using '#align linear_map.det_aux_def' LinearMap.detAux_def''ₓ'. -/
theorem detAux_def'' {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (tb : Trunc <| Basis ι A M)
(b' : Basis ι' A M) (f : M →ₗ[A] M) :
@@ -226,7 +226,7 @@ theorem detAux_def'' {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (tb : Trunc
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u3}} [_inst_8 : CommRing.{u3} A] [_inst_9 : Module.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : Trunc.{max (succ u2) (succ u3) (succ u1)} (Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)), Eq.{succ u3} A (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.detAux.{u1, u2, u3} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) (LinearMap.id.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (OfNat.ofNat.{u3} A 1 (OfNat.mk.{u3} A 1 (One.one.{u3} A (AddMonoidWithOne.toOne.{u3} A (AddGroupWithOne.toAddMonoidWithOne.{u3} A (AddCommGroupWithOne.toAddGroupWithOne.{u3} A (Ring.toAddCommGroupWithOne.{u3} A (CommRing.toRing.{u3} A _inst_8))))))))
but is expected to have type
- forall {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] (b : Trunc.{max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u1, u2, u3} ι A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.detAux.{u3, u1, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) (LinearMap.id.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (NonAssocRing.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) _inst_8)))))
+ forall {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] (b : Trunc.{max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u1, u2, u3} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.detAux.{u3, u1, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) (LinearMap.id.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) _inst_8)))))
Case conversion may be inaccurate. Consider using '#align linear_map.det_aux_id LinearMap.detAux_idₓ'. -/
@[simp]
theorem detAux_id (b : Trunc <| Basis ι A M) : LinearMap.detAux b LinearMap.id = 1 :=
@@ -237,7 +237,7 @@ theorem detAux_id (b : Trunc <| Basis ι A M) : LinearMap.detAux b LinearMap.id
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u3}} [_inst_8 : CommRing.{u3} A] [_inst_9 : Module.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : Trunc.{max (succ u2) (succ u3) (succ u1)} (Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (f : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (g : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u3} A (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.detAux.{u1, u2, u3} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) (LinearMap.comp.{u3, u3, u3, u1, u1, u1} A A A M M M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) (RingHomCompTriple.right_ids.{u3, u3} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))))) f g)) (HMul.hMul.{u3, u3, u3} A A A (instHMul.{u3} A (Distrib.toHasMul.{u3} A (Ring.toDistrib.{u3} A (CommRing.toRing.{u3} A _inst_8)))) (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.detAux.{u1, u2, u3} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) f) (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.detAux.{u1, u2, u3} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) g))
but is expected to have type
- forall {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] (b : Trunc.{max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u1, u2, u3} ι A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (f : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (g : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.comp.{u2, u2, u2, u3, u3, u3} A A A M M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) f g)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.detAux.{u3, u1, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) (LinearMap.comp.{u2, u2, u2, u3, u3, u3} A A A M M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) f g)) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) g) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (NonUnitalNonAssocRing.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (NonAssocRing.toNonUnitalNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) _inst_8))))) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.detAux.{u3, u1, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) f) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.detAux.{u3, u1, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) g))
+ forall {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] (b : Trunc.{max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u1, u2, u3} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (f : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (g : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.comp.{u2, u2, u2, u3, u3, u3} A A A M M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) f g)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.detAux.{u3, u1, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) (LinearMap.comp.{u2, u2, u2, u3, u3, u3} A A A M M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) f g)) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) g) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (NonUnitalNonAssocRing.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (NonAssocRing.toNonUnitalNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) _inst_8))))) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.detAux.{u3, u1, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) f) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.detAux.{u3, u1, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) g))
Case conversion may be inaccurate. Consider using '#align linear_map.det_aux_comp LinearMap.detAux_compₓ'. -/
@[simp]
theorem detAux_comp (b : Trunc <| Basis ι A M) (f g : M →ₗ[A] M) :
@@ -266,7 +266,7 @@ protected irreducible_def det : (M →ₗ[A] M) →* A :=
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_11 : DecidableEq.{succ u1} M], Eq.{max (succ u1) (succ u2)} ((LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9)) (dite.{max (succ u1) (succ u2)} ((LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (Exists.{succ u1} (Finset.{u1} M) (fun (s : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))) (Classical.propDecidable (Exists.{succ u1} (Finset.{u1} M) (fun (s : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (fun (H : Exists.{succ u1} (Finset.{u1} M) (fun (s : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))) => coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.detAux.{u1, u1, u2} M _inst_2 (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) (Exists.choose.{succ u1} (Finset.{u1} M) (fun (a : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) a) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) H)) (fun (a : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) (Exists.choose.{succ u1} (Finset.{u1} M) (fun (a : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) a) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) H)) (b : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) (Exists.choose.{succ u1} (Finset.{u1} M) (fun (a : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) a) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) H)) => Subtype.decidableEq.{u1} M (fun (x : M) => Membership.Mem.{u1, u1} M (Finset.{u1} M) (Finset.hasMem.{u1} M) x (Exists.choose.{succ u1} (Finset.{u1} M) (fun (a : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) a) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) H)) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u1} M (Exists.choose.{succ u1} (Finset.{u1} M) (fun (a : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) a) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) H)) A _inst_8 _inst_9 (Trunc.mk.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) (Exists.choose.{succ u1} (Finset.{u1} M) (fun (a : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) a) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) H)) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (Nonempty.some.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) (Exists.choose.{succ u1} (Finset.{u1} M) (fun (a : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) a) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) H)) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (Exists.choose_spec.{succ u1} (Finset.{u1} M) (fun (s : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) H))))) (fun (H : Not (Exists.{succ u1} (Finset.{u1} M) (fun (s : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) => OfNat.ofNat.{max u1 u2} ((LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) 1 (OfNat.mk.{max u1 u2} ((LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) 1 (One.one.{max u1 u2} ((LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (Pi.instOne.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (ᾰ : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (fun (i : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => AddMonoidWithOne.toOne.{u2} A (AddGroupWithOne.toAddMonoidWithOne.{u2} A (AddCommGroupWithOne.toAddGroupWithOne.{u2} A (Ring.toAddCommGroupWithOne.{u2} A (CommRing.toRing.{u2} A _inst_8))))))))))
but is expected to have type
- forall {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] [_inst_9 : Module.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] [_inst_11 : DecidableEq.{succ u2} M], Eq.{max (succ u2) (succ u1)} (forall (ᾰ : LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9), (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))))) (LinearMap.det.{u2, u1} M _inst_2 A _inst_8 _inst_9)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (a : LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) a) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))))) (dite.{max (succ u1) (succ u2)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Exists.{succ u2} (Finset.{u2} M) (fun (s : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))) (Classical.propDecidable (Exists.{succ u2} (Finset.{u2} M) (fun (s : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (fun (H : Exists.{succ u2} (Finset.{u2} M) (fun (s : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))) => LinearMap.detAux.{u2, u2, u1} M _inst_2 (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H))) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H))) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H))) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H)) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u2} M (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H)) A _inst_8 _inst_9 (Trunc.mk.{max (succ u1) (succ u2)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H))) A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9) (Nonempty.some.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H))) A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9) (Exists.choose_spec.{succ u2} (Finset.{u2} M) (fun (s : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H)))) (fun (H : Not (Exists.{succ u2} (Finset.{u2} M) (fun (s : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) => OfNat.ofNat.{max u2 u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) 1 (One.toOfNat1.{max u2 u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (instOneMonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))))
+ forall {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] [_inst_9 : Module.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] [_inst_11 : DecidableEq.{succ u2} M], Eq.{max (succ u2) (succ u1)} (forall (ᾰ : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9), (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.det.{u2, u1} M _inst_2 A _inst_8 _inst_9)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (a : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) a) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (dite.{max (succ u1) (succ u2)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Exists.{succ u2} (Finset.{u2} M) (fun (s : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))) (Classical.propDecidable (Exists.{succ u2} (Finset.{u2} M) (fun (s : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (fun (H : Exists.{succ u2} (Finset.{u2} M) (fun (s : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))) => LinearMap.detAux.{u2, u2, u1} M _inst_2 (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H))) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H))) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H))) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H)) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u2} M (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H)) A _inst_8 _inst_9 (Trunc.mk.{max (succ u1) (succ u2)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H))) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9) (Nonempty.some.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H))) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9) (Exists.choose_spec.{succ u2} (Finset.{u2} M) (fun (s : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H)))) (fun (H : Not (Exists.{succ u2} (Finset.{u2} M) (fun (s : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) => OfNat.ofNat.{max u2 u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) 1 (One.toOfNat1.{max u2 u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (instOneMonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))))))
Case conversion may be inaccurate. Consider using '#align linear_map.coe_det LinearMap.coe_detₓ'. -/
theorem coe_det [DecidableEq M] :
⇑(LinearMap.det : (M →ₗ[A] M) →* A) =
@@ -288,7 +288,7 @@ end
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_11 : DecidableEq.{succ u1} M] {s : Finset.{u1} M} (b : Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} A (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f) (Matrix.det.{u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (fun (a : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (b : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) => Subtype.decidableEq.{u1} M (fun (x : M) => Membership.Mem.{u1, u1} M (Finset.{u1} M) (Finset.hasMem.{u1} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u1} M s) A _inst_8 (coeFn.{max (succ u1) (succ (max u1 u2)), max (succ u1) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u1, max u1 u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.toMatrix._proof_2.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u1, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.module.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u2, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u2, u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (fun (_x : LinearEquiv.{u2, u2, u1, max u1 u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.toMatrix._proof_2.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u1, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.module.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u2, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u2, u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) => (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A)) (LinearEquiv.hasCoeToFun.{u2, u2, u1, max u1 u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u1, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.module.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u2, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u2, u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.toMatrix._proof_2.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.toMatrix.{u2, u1, u1, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (Finset.Subtype.fintype.{u1} M s) (Finset.Subtype.fintype.{u1} M s) (fun (a : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (b : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) => Subtype.decidableEq.{u1} M (fun (x : M) => Membership.Mem.{u1, u1} M (Finset.{u1} M) (Finset.hasMem.{u1} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f))
but is expected to have type
- forall {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] [_inst_9 : Module.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] [_inst_11 : DecidableEq.{succ u2} M] {s : Finset.{u2} M} (b : Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9) (f : LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) f) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))))) (LinearMap.det.{u2, u1} M _inst_2 A _inst_8 _inst_9) f) (Matrix.det.{u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u2} M s) A _inst_8 (FunLike.coe.{max (succ u2) (succ u1), succ u2, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, u2, max u2 u1} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (SMulZeroClass.toSMul.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Module.toDistribMulAction.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, u2, max u2 u1} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u1, u2, max u2 u1, max u2 u1} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u2, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u2, max u2 u1} A A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.toMatrix.{u1, u2, u2, u2, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Finset.Subtype.fintype.{u2} M s) (Finset.Subtype.fintype.{u2} M s) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 b b) f))
+ forall {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] [_inst_9 : Module.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] [_inst_11 : DecidableEq.{succ u2} M] {s : Finset.{u2} M} (b : Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9) (f : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) f) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.det.{u2, u1} M _inst_2 A _inst_8 _inst_9) f) (Matrix.det.{u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u2} M s) A _inst_8 (FunLike.coe.{max (succ u2) (succ u1), succ u2, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, u2, max u2 u1} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (SMulZeroClass.toSMul.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Module.toDistribMulAction.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, u2, max u2 u1} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u1, u2, max u2 u1, max u2 u1} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u2, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u2, max u2 u1} A A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.toMatrix.{u1, u2, u2, u2, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Finset.Subtype.fintype.{u2} M s) (Finset.Subtype.fintype.{u2} M s) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 b b) f))
Case conversion may be inaccurate. Consider using '#align linear_map.det_eq_det_to_matrix_of_finset LinearMap.det_eq_det_toMatrix_of_finsetₓ'. -/
-- Auxiliary lemma, the `simp` normal form goes in the other direction
-- (using `linear_map.det_to_matrix`)
@@ -303,7 +303,7 @@ theorem det_eq_det_toMatrix_of_finset [DecidableEq M] {s : Finset M} (b : Basis
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u3}} [_inst_8 : CommRing.{u3} A] [_inst_9 : Module.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u3} A (Matrix.det.{u3, u2} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (coeFn.{max (succ u1) (succ (max u2 u3)), max (succ u1) (succ (max u2 u3))} (LinearEquiv.{u3, u3, u1, max u2 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (fun (_x : LinearEquiv.{u3, u3, u1, max u2 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) => (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> (Matrix.{u2, u2, u3} ι ι A)) (LinearEquiv.hasCoeToFun.{u3, u3, u1, max u2 u3} A A (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))) (LinearMap.toMatrix.{u3, u2, u2, u1, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f)) (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.det.{u1, u3} M _inst_2 A _inst_8 _inst_9) f)
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : Basis.{u3, u2, u1} ι A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} A (Matrix.det.{u2, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => Matrix.{u3, u3, u2} ι ι A) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (SMulZeroClass.toSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toZero.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toAddZeroClass.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u1 u3) u2} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u1 u3) u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u3, u3, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f)
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : Basis.{u3, u2, u1} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} A (Matrix.det.{u2, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => Matrix.{u3, u3, u2} ι ι A) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (SMulZeroClass.toSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toZero.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toAddZeroClass.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u1 u3) u2} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u1 u3) u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u3, u3, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f)
Case conversion may be inaccurate. Consider using '#align linear_map.det_to_matrix LinearMap.det_toMatrixₓ'. -/
@[simp]
theorem det_toMatrix (b : Basis ι A M) (f : M →ₗ[A] M) : Matrix.det (toMatrix b b f) = f.det :=
@@ -316,7 +316,7 @@ theorem det_toMatrix (b : Basis ι A M) (f : M →ₗ[A] M) : Matrix.det (toMatr
lean 3 declaration is
forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {ι : Type.{u2}} [_inst_11 : Fintype.{u2} ι] [_inst_12 : DecidableEq.{succ u2} ι] (f : LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))), Eq.{succ u1} A (Matrix.det.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_12 a b) _inst_11 A _inst_8 (coeFn.{succ (max u2 u1), succ (max u2 u1)} (LinearEquiv.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_1.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.toMatrix'._proof_2.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_3.{u1, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι)) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (_x : LinearEquiv.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_1.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.toMatrix'._proof_2.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_3.{u1, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι)) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) -> (Matrix.{u2, u2, u1} ι ι A)) (LinearEquiv.hasCoeToFun.{u1, u1, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_3.{u1, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι)) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_1.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.toMatrix'._proof_2.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.toMatrix'.{u1, u2, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι ι _inst_11 (fun (a : ι) (b : ι) => _inst_12 a b)) f)) (coeFn.{max (succ u1) (succ (max u2 u1)), max (succ (max u2 u1)) (succ u1)} (MonoidHom.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u2 u1} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (fun (_x : MonoidHom.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u2 u1} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) => (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) -> A) (MonoidHom.hasCoeToFun.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u2 u1} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.det.{max u2 u1, u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A _inst_8 (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) f)
but is expected to have type
- forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {ι : Type.{u2}} [_inst_11 : Fintype.{u2} ι] [_inst_12 : DecidableEq.{succ u2} ι] (f : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))), Eq.{succ u1} A (Matrix.det.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_12 a b) _inst_11 A _inst_8 (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (_x : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => Matrix.{u2, u2, u1} ι ι A) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (SMulZeroClass.toSMul.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddMonoid.toZero.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddMonoid.toAddZeroClass.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Module.toDistribMulAction.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, max u2 u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.toMatrix'.{u1, u2, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι ι _inst_11 (fun (a : ι) (b : ι) => _inst_12 a b)) f)) (FunLike.coe.{max (succ u1) (succ (max u1 u2)), succ (max u1 u2), succ u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u1 u2} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (_x : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) => A) _x) (MulHomClass.toFunLike.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u1 u2} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulOneClass.toMul.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u1 u2} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))))))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u1 u2} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u1 u2} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u1 u2} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))))) (LinearMap.det.{max u1 u2, u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) A _inst_8 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) f)
+ forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {ι : Type.{u2}} [_inst_11 : Fintype.{u2} ι] [_inst_12 : DecidableEq.{succ u2} ι] (f : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))), Eq.{succ u1} A (Matrix.det.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_12 a b) _inst_11 A _inst_8 (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (_x : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => Matrix.{u2, u2, u1} ι ι A) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (SMulZeroClass.toSMul.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddMonoid.toZero.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddMonoid.toAddZeroClass.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Module.toDistribMulAction.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, max u2 u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.toMatrix'.{u1, u2, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι ι _inst_11 (fun (a : ι) (b : ι) => _inst_12 a b)) f)) (FunLike.coe.{max (succ u1) (succ (max u1 u2)), succ (max u1 u2), succ u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (_x : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => A) _x) (MulHomClass.toFunLike.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulOneClass.toMul.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Module.End.semiring.{u1, max u1 u2} A (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.det.{max u1 u2, u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) A _inst_8 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) f)
Case conversion may be inaccurate. Consider using '#align linear_map.det_to_matrix' LinearMap.det_toMatrix'ₓ'. -/
@[simp]
theorem det_toMatrix' {ι : Type _} [Fintype ι] [DecidableEq ι] (f : (ι → A) →ₗ[A] ι → A) :
@@ -327,7 +327,7 @@ theorem det_toMatrix' {ι : Type _} [Fintype ι] [DecidableEq ι] (f : (ι → A
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (b : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (f : Matrix.{u3, u3, u1} ι ι R), Eq.{succ u1} R (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) (coeFn.{max (succ (max u3 u1)) (succ u2), max (succ (max u3 u1)) (succ u2)} (LinearEquiv.{u1, u1, max u3 u1, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.toLin._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.{u3, u3, u1} ι ι R) (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u1, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, u2, u2} R R M M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u3, u3, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u2} R R R M M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_3 (Matrix.toLin._proof_3.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3))) (fun (_x : LinearEquiv.{u1, u1, max u3 u1, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.toLin._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.{u3, u3, u1} ι ι R) (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u1, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, u2, u2} R R M M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u3, u3, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u2} R R R M M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_3 (Matrix.toLin._proof_3.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3))) => (Matrix.{u3, u3, u1} ι ι R) -> (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3)) (LinearEquiv.hasCoeToFun.{u1, u1, max u3 u1, u2} R R (Matrix.{u3, u3, u1} ι ι R) (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, u2, u2} R R M M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u3, u3, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u2} R R R M M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_3 (Matrix.toLin._proof_3.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.toLin._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.toLin.{u1, u3, u3, u2, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 b b) f)) (Matrix.det.{u1, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 f)
but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (f : Matrix.{u3, u3, u2} ι ι R), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (Matrix.{u3, u3, u2} ι ι R) (fun (a : Matrix.{u3, u3, u2} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Matrix.{u3, u3, u2} ι ι R) => LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) a) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, max u2 u3, u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (AddMonoid.toZero.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (SMulZeroClass.toSMul.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, max u2 u3, u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (SemilinearMapClass.distribMulActionHomClass.{u2, max u2 u3, u1, max (max u2 u1) u3} R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u2 u3, u1, max (max u2 u1) u3} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u2 u3, u1} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (Matrix.toLin.{u2, u3, u3, u1, u1} R (CommRing.toCommSemiring.{u2} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 b b) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3)))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (Matrix.{u3, u3, u2} ι ι R) (fun (_x : Matrix.{u3, u3, u2} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Matrix.{u3, u3, u2} ι ι R) => LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, max u2 u3, u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (AddMonoid.toZero.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (SMulZeroClass.toSMul.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, max u2 u3, u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (SemilinearMapClass.distribMulActionHomClass.{u2, max u2 u3, u1, max (max u2 u1) u3} R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u2 u3, u1, max (max u2 u1) u3} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u2 u3, u1} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (Matrix.toLin.{u2, u3, u3, u1, u1} R (CommRing.toCommSemiring.{u2} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 b b) f)) (Matrix.det.{u2, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 f)
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (f : Matrix.{u3, u3, u2} ι ι R), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (Matrix.{u3, u3, u2} ι ι R) (fun (a : Matrix.{u3, u3, u2} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Matrix.{u3, u3, u2} ι ι R) => LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) a) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, max u2 u3, u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (AddMonoid.toZero.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (SMulZeroClass.toSMul.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, max u2 u3, u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (SemilinearMapClass.distribMulActionHomClass.{u2, max u2 u3, u1, max (max u2 u1) u3} R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u2 u3, u1, max (max u2 u1) u3} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u2 u3, u1} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (Matrix.toLin.{u2, u3, u3, u1, u1} R (CommRing.toCommSemiring.{u2} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 b b) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (Matrix.{u3, u3, u2} ι ι R) (fun (_x : Matrix.{u3, u3, u2} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Matrix.{u3, u3, u2} ι ι R) => LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, max u2 u3, u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (AddMonoid.toZero.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (SMulZeroClass.toSMul.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, max u2 u3, u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (SemilinearMapClass.distribMulActionHomClass.{u2, max u2 u3, u1, max (max u2 u1) u3} R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u2 u3, u1, max (max u2 u1) u3} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u2 u3, u1} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (Matrix.toLin.{u2, u3, u3, u1, u1} R (CommRing.toCommSemiring.{u2} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 b b) f)) (Matrix.det.{u2, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 f)
Case conversion may be inaccurate. Consider using '#align linear_map.det_to_lin LinearMap.det_toLinₓ'. -/
@[simp]
theorem det_toLin (b : Basis ι R M) (f : Matrix ι ι R) :
@@ -339,7 +339,7 @@ theorem det_toLin (b : Basis ι R M) (f : Matrix ι ι R) :
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] (f : Matrix.{u2, u2, u1} ι ι R), Eq.{succ u1} R (coeFn.{max (succ u1) (succ (max u2 u1)), max (succ (max u2 u1)) (succ u1)} (MonoidHom.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u2 u1} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u2 u1} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) -> R) (MonoidHom.hasCoeToFun.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u2 u1} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{max u2 u1, u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) R _inst_1 (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (coeFn.{succ (max u2 u1), succ (max u2 u1)} (LinearEquiv.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.toLin'._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_3.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι))) (fun (_x : LinearEquiv.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.toLin'._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_3.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι))) => (Matrix.{u2, u2, u1} ι ι R) -> (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u1, u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_3.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.toLin'._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.toLin'.{u1, u2, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b)) f)) (Matrix.det.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 f)
but is expected to have type
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] (f : Matrix.{u2, u2, u1} ι ι R), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => R) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (Matrix.{u2, u2, u1} ι ι R) (fun (a : Matrix.{u2, u2, u1} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Matrix.{u2, u2, u1} ι ι R) => LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) a) (SMulHomClass.toFunLike.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toZero.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, max u2 u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (Matrix.toLin'.{u1, u2, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b)) f)) (FunLike.coe.{max (succ u1) (succ (max u1 u2)), succ (max u1 u2), succ u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u1 u2} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (_x : LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => R) _x) (MulHomClass.toFunLike.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u1 u2} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulOneClass.toMul.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u1 u2} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))))) (MulOneClass.toMul.{u1} R (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u1 u2} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u1 u2} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (MonoidHom.monoidHomClass.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u1 u2} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))))) (LinearMap.det.{max u1 u2, u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1))) R _inst_1 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (Matrix.{u2, u2, u1} ι ι R) (fun (_x : Matrix.{u2, u2, u1} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Matrix.{u2, u2, u1} ι ι R) => LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toZero.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, max u2 u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (Matrix.toLin'.{u1, u2, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b)) f)) (Matrix.det.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 f)
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] (f : Matrix.{u2, u2, u1} ι ι R), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => R) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (Matrix.{u2, u2, u1} ι ι R) (fun (a : Matrix.{u2, u2, u1} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Matrix.{u2, u2, u1} ι ι R) => LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) a) (SMulHomClass.toFunLike.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toZero.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, max u2 u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (Matrix.toLin'.{u1, u2, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b)) f)) (FunLike.coe.{max (succ u1) (succ (max u1 u2)), succ (max u1 u2), succ u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (_x : LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => R) _x) (MulHomClass.toFunLike.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulOneClass.toMul.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulOneClass.toMul.{u1} R (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidHom.monoidHomClass.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.semiring.{u1, max u1 u2} R (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (LinearMap.det.{max u1 u2, u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1))) R _inst_1 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (Matrix.{u2, u2, u1} ι ι R) (fun (_x : Matrix.{u2, u2, u1} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Matrix.{u2, u2, u1} ι ι R) => LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toZero.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, max u2 u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (Matrix.toLin'.{u1, u2, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b)) f)) (Matrix.det.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 f)
Case conversion may be inaccurate. Consider using '#align linear_map.det_to_lin' LinearMap.det_toLin'ₓ'. -/
@[simp]
theorem det_toLin' (f : Matrix ι ι R) : LinearMap.det f.toLin' = f.det := by
@@ -350,7 +350,7 @@ theorem det_toLin' (f : Matrix ι ι R) : LinearMap.det f.toLin' = f.det := by
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_11 : DecidableEq.{succ u1} M] {P : A -> Prop} (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), (forall (s : Finset.{u1} M) (b : Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9), P (Matrix.det.{u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (fun (a : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (b : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) => Subtype.decidableEq.{u1} M (fun (x : M) => Membership.Mem.{u1, u1} M (Finset.{u1} M) (Finset.hasMem.{u1} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u1} M s) A _inst_8 (coeFn.{max (succ u1) (succ (max u1 u2)), max (succ u1) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u1, max u1 u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.toMatrix._proof_2.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u1, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.module.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u2, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u2, u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (fun (_x : LinearEquiv.{u2, u2, u1, max u1 u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.toMatrix._proof_2.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u1, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.module.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u2, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u2, u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) => (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A)) (LinearEquiv.hasCoeToFun.{u2, u2, u1, max u1 u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u1, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.module.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u2, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u2, u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.toMatrix._proof_2.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.toMatrix.{u2, u1, u1, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (Finset.Subtype.fintype.{u1} M s) (Finset.Subtype.fintype.{u1} M s) (fun (a : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (b : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) => Subtype.decidableEq.{u1} M (fun (x : M) => Membership.Mem.{u1, u1} M (Finset.{u1} M) (Finset.hasMem.{u1} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f))) -> (P (OfNat.ofNat.{u2} A 1 (OfNat.mk.{u2} A 1 (One.one.{u2} A (AddMonoidWithOne.toOne.{u2} A (AddGroupWithOne.toAddMonoidWithOne.{u2} A (AddCommGroupWithOne.toAddGroupWithOne.{u2} A (Ring.toAddCommGroupWithOne.{u2} A (CommRing.toRing.{u2} A _inst_8))))))))) -> (P (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f))
but is expected to have type
- forall {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] [_inst_9 : Module.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] [_inst_11 : DecidableEq.{succ u2} M] {P : A -> Prop} (f : LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9), (forall (s : Finset.{u2} M) (b : Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9), P (Matrix.det.{u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u2} M s) A _inst_8 (FunLike.coe.{max (succ u2) (succ u1), succ u2, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, u2, max u2 u1} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (SMulZeroClass.toSMul.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Module.toDistribMulAction.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, u2, max u2 u1} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u1, u2, max u2 u1, max u2 u1} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u2, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u2, max u2 u1} A A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.toMatrix.{u1, u2, u2, u2, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Finset.Subtype.fintype.{u2} M s) (Finset.Subtype.fintype.{u2} M s) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 b b) f))) -> (P (OfNat.ofNat.{u1} A 1 (One.toOfNat1.{u1} A (NonAssocRing.toOne.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) -> (P (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))))) (LinearMap.det.{u2, u1} M _inst_2 A _inst_8 _inst_9) f))
+ forall {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] [_inst_9 : Module.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] [_inst_11 : DecidableEq.{succ u2} M] {P : A -> Prop} (f : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9), (forall (s : Finset.{u2} M) (b : Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9), P (Matrix.det.{u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u2} M s) A _inst_8 (FunLike.coe.{max (succ u2) (succ u1), succ u2, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, u2, max u2 u1} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (SMulZeroClass.toSMul.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Module.toDistribMulAction.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, u2, max u2 u1} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u1, u2, max u2 u1, max u2 u1} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u2, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u2, max u2 u1} A A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.toMatrix.{u1, u2, u2, u2, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Finset.Subtype.fintype.{u2} M s) (Finset.Subtype.fintype.{u2} M s) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 b b) f))) -> (P (OfNat.ofNat.{u1} A 1 (One.toOfNat1.{u1} A (Semiring.toOne.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) -> (P (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.det.{u2, u1} M _inst_2 A _inst_8 _inst_9) f))
Case conversion may be inaccurate. Consider using '#align linear_map.det_cases LinearMap.det_casesₓ'. -/
/-- To show `P f.det` it suffices to consider `P (to_matrix _ _ f).det` and `P 1`. -/
@[elab_as_elim]
@@ -368,7 +368,7 @@ theorem det_cases [DecidableEq M] {P : A → Prop} (f : M →ₗ[A] M)
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (g : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} A (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearMap.comp.{u2, u2, u2, u1, u1, u1} A A A M M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomCompTriple.right_ids.{u2, u2} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))) f g)) (HMul.hMul.{u2, u2, u2} A A A (instHMul.{u2} A (Distrib.toHasMul.{u2} A (Ring.toDistrib.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) g))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (g : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.comp.{u2, u2, u2, u1, u1, u1} A A A M M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) f g)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearMap.comp.{u2, u2, u2, u1, u1, u1} A A A M M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) f g)) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) g) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (NonUnitalNonAssocRing.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (NonAssocRing.toNonUnitalNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) _inst_8))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) g))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (g : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.comp.{u2, u2, u2, u1, u1, u1} A A A M M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) f g)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearMap.comp.{u2, u2, u2, u1, u1, u1} A A A M M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) f g)) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) g) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (NonUnitalNonAssocRing.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (NonAssocRing.toNonUnitalNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) _inst_8))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) g))
Case conversion may be inaccurate. Consider using '#align linear_map.det_comp LinearMap.det_compₓ'. -/
@[simp]
theorem det_comp (f g : M →ₗ[A] M) : (f.comp g).det = f.det * g.det :=
@@ -379,7 +379,7 @@ theorem det_comp (f g : M →ₗ[A] M) : (f.comp g).det = f.det * g.det :=
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)], Eq.{succ u2} A (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearMap.id.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (OfNat.ofNat.{u2} A 1 (OfNat.mk.{u2} A 1 (One.one.{u2} A (AddMonoidWithOne.toOne.{u2} A (AddGroupWithOne.toAddMonoidWithOne.{u2} A (AddCommGroupWithOne.toAddGroupWithOne.{u2} A (Ring.toAddCommGroupWithOne.{u2} A (CommRing.toRing.{u2} A _inst_8))))))))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)], Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearMap.id.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (NonAssocRing.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) _inst_8)))))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)], Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearMap.id.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) _inst_8)))))
Case conversion may be inaccurate. Consider using '#align linear_map.det_id LinearMap.det_idₓ'. -/
@[simp]
theorem det_id : (LinearMap.id : M →ₗ[A] M).det = 1 :=
@@ -390,7 +390,7 @@ theorem det_id : (LinearMap.id : M →ₗ[A] M).det = 1 :=
lean 3 declaration is
forall {𝕜 : Type.{u1}} [_inst_11 : Field.{u1} 𝕜] {M : Type.{u2}} [_inst_12 : AddCommGroup.{u2} M] [_inst_13 : Module.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12)] (c : 𝕜) (f : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13), Eq.{succ u1} 𝕜 (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) => (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) -> 𝕜) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) (LinearMap.det.{u2, u1} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)) _inst_13) (SMul.smul.{u1, u2} 𝕜 (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (LinearMap.hasSmul.{u1, u1, u1, u2, u2} 𝕜 𝕜 𝕜 M M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13 (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) (Ring.toMonoid.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (Module.toDistribMulAction.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13) (smulCommClass_self.{u1, u2} 𝕜 M (CommRing.toCommMonoid.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11))) (MulActionWithZero.toMulAction.{u1, u2} 𝕜 M (Semiring.toMonoidWithZero.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11)))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12)))) (Module.toMulActionWithZero.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13)))) c f)) (HMul.hMul.{u1, u1, u1} 𝕜 𝕜 𝕜 (instHMul.{u1} 𝕜 (Distrib.toHasMul.{u1} 𝕜 (Ring.toDistrib.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))) (HPow.hPow.{u1, 0, u1} 𝕜 Nat 𝕜 (instHPow.{u1, 0} 𝕜 Nat (Monoid.Pow.{u1} 𝕜 (Ring.toMonoid.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))) c (FiniteDimensional.finrank.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) _inst_12 _inst_13)) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) => (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) -> 𝕜) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) (LinearMap.det.{u2, u1} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)) _inst_13) f))
but is expected to have type
- forall {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] {M : Type.{u1}} [_inst_12 : AddCommGroup.{u1} M] [_inst_13 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12)] (c : 𝕜) (f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) (HSMul.hSMul.{u2, u1, u1} 𝕜 (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (instHSMul.{u2, u1} 𝕜 (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.instSMulLinearMap.{u2, u2, u2, u1, u1} 𝕜 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13 (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) (MonoidWithZero.toMonoid.{u2} 𝕜 (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) (Module.toDistribMulAction.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13) (smulCommClass_self.{u2, u1} 𝕜 M (CommRing.toCommMonoid.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))) (MulActionWithZero.toMulAction.{u2, u1} 𝕜 M (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_12))))) (Module.toMulActionWithZero.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13))))) c f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13)))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_13) (HSMul.hSMul.{u2, u1, u1} 𝕜 (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (instHSMul.{u2, u1} 𝕜 (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.instSMulLinearMap.{u2, u2, u2, u1, u1} 𝕜 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13 (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) (MonoidWithZero.toMonoid.{u2} 𝕜 (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) (Module.toDistribMulAction.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13) (smulCommClass_self.{u2, u1} 𝕜 M (CommRing.toCommMonoid.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))) (MulActionWithZero.toMulAction.{u2, u1} 𝕜 M (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_12))))) (Module.toMulActionWithZero.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13))))) c f)) (HMul.hMul.{u2, u2, u2} 𝕜 ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) 𝕜 (instHMul.{u2} 𝕜 (NonUnitalNonAssocRing.toMul.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11)))))) (HPow.hPow.{u2, 0, u2} 𝕜 Nat 𝕜 (instHPow.{u2, 0} 𝕜 Nat (Monoid.Pow.{u2} 𝕜 (MonoidWithZero.toMonoid.{u2} 𝕜 (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))))) c (FiniteDimensional.finrank.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) _inst_12 _inst_13)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13)))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_13) f))
+ forall {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] {M : Type.{u1}} [_inst_12 : AddCommGroup.{u1} M] [_inst_13 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12)] (c : 𝕜) (f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) (HSMul.hSMul.{u2, u1, u1} 𝕜 (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (instHSMul.{u2, u1} 𝕜 (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.instSMulLinearMap.{u2, u2, u2, u1, u1} 𝕜 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) (MonoidWithZero.toMonoid.{u2} 𝕜 (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) (Module.toDistribMulAction.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13) (smulCommClass_self.{u2, u1} 𝕜 M (CommRing.toCommMonoid.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))) (MulActionWithZero.toMulAction.{u2, u1} 𝕜 M (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_12))))) (Module.toMulActionWithZero.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13))))) c f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_13) (HSMul.hSMul.{u2, u1, u1} 𝕜 (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (instHSMul.{u2, u1} 𝕜 (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.instSMulLinearMap.{u2, u2, u2, u1, u1} 𝕜 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) (MonoidWithZero.toMonoid.{u2} 𝕜 (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) (Module.toDistribMulAction.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13) (smulCommClass_self.{u2, u1} 𝕜 M (CommRing.toCommMonoid.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))) (MulActionWithZero.toMulAction.{u2, u1} 𝕜 M (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_12))))) (Module.toMulActionWithZero.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13))))) c f)) (HMul.hMul.{u2, u2, u2} 𝕜 ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) 𝕜 (instHMul.{u2} 𝕜 (NonUnitalNonAssocRing.toMul.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11)))))) (HPow.hPow.{u2, 0, u2} 𝕜 Nat 𝕜 (instHPow.{u2, 0} 𝕜 Nat (Monoid.Pow.{u2} 𝕜 (MonoidWithZero.toMonoid.{u2} 𝕜 (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))))) c (FiniteDimensional.finrank.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) _inst_12 _inst_13)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_13) f))
Case conversion may be inaccurate. Consider using '#align linear_map.det_smul LinearMap.det_smulₓ'. -/
/-- Multiplying a map by a scalar `c` multiplies its determinant by `c ^ dim M`. -/
@[simp]
@@ -413,7 +413,7 @@ theorem det_smul {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCommGroup M] [Mod
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_11 : Finite.{succ u3} ι] [_inst_12 : Nonempty.{succ u3} ι], (Basis.{u3, u2, u1} ι A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) -> (Eq.{succ u2} A (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (OfNat.mk.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.zero.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.hasZero.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))))))) (OfNat.ofNat.{u2} A 0 (OfNat.mk.{u2} A 0 (Zero.zero.{u2} A (MulZeroClass.toHasZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))))))))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_11 : Finite.{succ u3} ι] [_inst_12 : Nonempty.{succ u3} ι], (Basis.{u3, u2, u1} ι A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) -> (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (CommMonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (CommSemiring.toCommMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) _inst_8))))))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_11 : Finite.{succ u3} ι] [_inst_12 : Nonempty.{succ u3} ι], (Basis.{u3, u2, u1} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) -> (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (CommMonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (CommSemiring.toCommMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) _inst_8))))))
Case conversion may be inaccurate. Consider using '#align linear_map.det_zero' LinearMap.det_zero'ₓ'. -/
theorem det_zero' {ι : Type _} [Finite ι] [Nonempty ι] (b : Basis ι A M) :
LinearMap.det (0 : M →ₗ[A] M) = 0 :=
@@ -427,7 +427,7 @@ theorem det_zero' {ι : Type _} [Finite ι] [Nonempty ι] (b : Basis ι A M) :
lean 3 declaration is
forall {𝕜 : Type.{u1}} [_inst_11 : Field.{u1} 𝕜] {M : Type.{u2}} [_inst_12 : AddCommGroup.{u2} M] [_inst_13 : Module.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12)], Eq.{succ u1} 𝕜 (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) => (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) -> 𝕜) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) (LinearMap.det.{u2, u1} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)) _inst_13) (OfNat.ofNat.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 0 (OfNat.mk.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 0 (Zero.zero.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (LinearMap.hasZero.{u1, u1, u2, u2} 𝕜 𝕜 M M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13 (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11)))))))))) (HPow.hPow.{u1, 0, u1} 𝕜 Nat 𝕜 (instHPow.{u1, 0} 𝕜 Nat (Monoid.Pow.{u1} 𝕜 (Ring.toMonoid.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))) (OfNat.ofNat.{u1} 𝕜 0 (OfNat.mk.{u1} 𝕜 0 (Zero.zero.{u1} 𝕜 (MulZeroClass.toHasZero.{u1} 𝕜 (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} 𝕜 (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11)))))))))) (FiniteDimensional.finrank.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) _inst_12 _inst_13))
but is expected to have type
- forall {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] {M : Type.{u1}} [_inst_12 : AddCommGroup.{u1} M] [_inst_13 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12)], Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13 (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13)))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_13) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13 (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))))))) (HPow.hPow.{u2, 0, u2} 𝕜 Nat 𝕜 (instHPow.{u2, 0} 𝕜 Nat (Monoid.Pow.{u2} 𝕜 (MonoidWithZero.toMonoid.{u2} 𝕜 (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))))) (OfNat.ofNat.{u2} 𝕜 0 (Zero.toOfNat0.{u2} 𝕜 (CommMonoidWithZero.toZero.{u2} 𝕜 (CommGroupWithZero.toCommMonoidWithZero.{u2} 𝕜 (Semifield.toCommGroupWithZero.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))))) (FiniteDimensional.finrank.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) _inst_12 _inst_13))
+ forall {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] {M : Type.{u1}} [_inst_12 : AddCommGroup.{u1} M] [_inst_13 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12)], Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_13) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))))))) (HPow.hPow.{u2, 0, u2} 𝕜 Nat 𝕜 (instHPow.{u2, 0} 𝕜 Nat (Monoid.Pow.{u2} 𝕜 (MonoidWithZero.toMonoid.{u2} 𝕜 (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))))) (OfNat.ofNat.{u2} 𝕜 0 (Zero.toOfNat0.{u2} 𝕜 (CommMonoidWithZero.toZero.{u2} 𝕜 (CommGroupWithZero.toCommMonoidWithZero.{u2} 𝕜 (Semifield.toCommGroupWithZero.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))))) (FiniteDimensional.finrank.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) _inst_12 _inst_13))
Case conversion may be inaccurate. Consider using '#align linear_map.det_zero LinearMap.det_zeroₓ'. -/
/-- In a finite-dimensional vector space, the zero map has determinant `1` in dimension `0`,
and `0` otherwise. We give a formula that also works in infinite dimension, where we define
@@ -442,7 +442,7 @@ theorem det_zero {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCommGroup M] [Mod
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] [_inst_11 : Subsingleton.{succ u2} M] (f : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3), Eq.{succ u1} R (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) f) (OfNat.ofNat.{u1} R 1 (OfNat.mk.{u1} R 1 (One.one.{u1} R (AddMonoidWithOne.toOne.{u1} R (AddGroupWithOne.toAddMonoidWithOne.{u1} R (AddCommGroupWithOne.toAddGroupWithOne.{u1} R (Ring.toAddCommGroupWithOne.{u1} R (CommRing.toRing.{u1} R _inst_1))))))))
but is expected to have type
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] [_inst_11 : Subsingleton.{succ u2} M] (f : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3)))))) (MulOneClass.toMul.{u1} R (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) f) (OfNat.ofNat.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) 1 (One.toOfNat1.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) (NonAssocRing.toOne.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) (Ring.toNonAssocRing.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) (CommRing.toRing.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) _inst_1)))))
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] [_inst_11 : Subsingleton.{succ u2} M] (f : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u1} R (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) f) (OfNat.ofNat.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) 1 (One.toOfNat1.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) (Semiring.toOne.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) (CommSemiring.toSemiring.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) (CommRing.toCommSemiring.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) _inst_1)))))
Case conversion may be inaccurate. Consider using '#align linear_map.det_eq_one_of_subsingleton LinearMap.det_eq_one_of_subsingletonₓ'. -/
theorem det_eq_one_of_subsingleton [Subsingleton M] (f : M →ₗ[R] M) : (f : M →ₗ[R] M).det = 1 :=
by
@@ -455,7 +455,7 @@ theorem det_eq_one_of_subsingleton [Subsingleton M] (f : M →ₗ[R] M) : (f : M
lean 3 declaration is
forall {𝕜 : Type.{u1}} [_inst_11 : Field.{u1} 𝕜] {M : Type.{u2}} [_inst_12 : AddCommGroup.{u2} M] [_inst_13 : Module.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12)], (Eq.{1} Nat (FiniteDimensional.finrank.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) _inst_12 _inst_13) (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero)))) -> (forall (f : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13), Eq.{succ u1} 𝕜 (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) => (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) -> 𝕜) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) (LinearMap.det.{u2, u1} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)) _inst_13) f) (OfNat.ofNat.{u1} 𝕜 1 (OfNat.mk.{u1} 𝕜 1 (One.one.{u1} 𝕜 (AddMonoidWithOne.toOne.{u1} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u1} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u1} 𝕜 (Ring.toAddCommGroupWithOne.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))))))))
but is expected to have type
- forall {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] {M : Type.{u1}} [_inst_12 : AddCommGroup.{u1} M] [_inst_13 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12)], (Eq.{1} Nat (FiniteDimensional.finrank.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) _inst_12 _inst_13) (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))) -> (forall (f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13)))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_13) f) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) (NonAssocRing.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) (DivisionRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) (Field.toDivisionRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) _inst_11)))))))
+ forall {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] {M : Type.{u1}} [_inst_12 : AddCommGroup.{u1} M] [_inst_13 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12)], (Eq.{1} Nat (FiniteDimensional.finrank.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) _inst_12 _inst_13) (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))) -> (forall (f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_13) f) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) (DivisionSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) (Semifield.toDivisionSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) (Field.toSemifield.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) _inst_11)))))))
Case conversion may be inaccurate. Consider using '#align linear_map.det_eq_one_of_finrank_eq_zero LinearMap.det_eq_one_of_finrank_eq_zeroₓ'. -/
theorem det_eq_one_of_finrank_eq_zero {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCommGroup M]
[Module 𝕜 M] (h : FiniteDimensional.finrank 𝕜 M = 0) (f : M →ₗ[𝕜] M) :
@@ -473,7 +473,7 @@ theorem det_eq_one_of_finrank_eq_zero {𝕜 : Type _} [Field 𝕜] {M : Type _}
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {N : Type.{u3}} [_inst_11 : AddCommGroup.{u3} N] [_inst_12 : Module.{u2, u3} A N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11)] (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (e : LinearEquiv.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12), Eq.{succ u2} A (coeFn.{max (succ u2) (succ u3), max (succ u3) (succ u2)} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.ring.{u2, u3} A N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_11 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.ring.{u2, u3} A N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_11 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) -> A) (MonoidHom.hasCoeToFun.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.ring.{u2, u3} A N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_11 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u3, u2} N _inst_11 A _inst_8 _inst_12) (LinearMap.comp.{u2, u2, u2, u3, u1, u3} A A A N M N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_9 _inst_12 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))) ((fun (a : Sort.{max (succ u1) (succ u3)}) (b : Sort.{max (succ u1) (succ u3)}) [self : HasLiftT.{max (succ u1) (succ u3), max (succ u1) (succ u3)} a b] => self.0) (LinearEquiv.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12) (LinearMap.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12) (HasLiftT.mk.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (LinearEquiv.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12) (LinearMap.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12) (CoeTCₓ.coe.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (LinearEquiv.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12) (LinearMap.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12) (coeBase.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (LinearEquiv.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12) (LinearMap.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u1, u3} A A M N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))))) e) (LinearMap.comp.{u2, u2, u2, u3, u1, u1} A A A N M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))) f ((fun (a : Sort.{max (succ u3) (succ u1)}) (b : Sort.{max (succ u3) (succ u1)}) [self : HasLiftT.{max (succ u3) (succ u1), max (succ u3) (succ u1)} a b] => self.0) (LinearEquiv.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9) (LinearMap.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9) (HasLiftT.mk.{max (succ u3) (succ u1), max (succ u3) (succ u1)} (LinearEquiv.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9) (LinearMap.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9) (CoeTCₓ.coe.{max (succ u3) (succ u1), max (succ u3) (succ u1)} (LinearEquiv.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9) (LinearMap.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9) (coeBase.{max (succ u3) (succ u1), max (succ u3) (succ u1)} (LinearEquiv.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9) (LinearMap.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u3, u1} A A N M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))))) (LinearEquiv.symm.{u2, u2, u1, u3} A A M N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) e))))) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f)
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {N : Type.{u3}} [_inst_11 : AddCommGroup.{u3} N] [_inst_12 : Module.{u2, u3} A N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11)] (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (e : LinearEquiv.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) => A) (LinearMap.comp.{u2, u2, u2, u3, u1, u3} A A A N M N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_9 _inst_12 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (LinearEquiv.toLinearMap.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12 e) (LinearMap.comp.{u2, u2, u2, u3, u1, u1} A A A N M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))) f (LinearEquiv.toLinearMap.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u3} A A M N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) e))))) (FunLike.coe.{max (succ u2) (succ u3), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.ring.{u2, u3} A N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_11 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) => A) _x) (MulHomClass.toFunLike.{max u2 u3, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.ring.{u2, u3} A N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_11 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.ring.{u2, u3} A N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_11 _inst_12)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u3, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.ring.{u2, u3} A N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_11 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.ring.{u2, u3} A N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_11 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.ring.{u2, u3} A N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_11 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.det.{u3, u2} N _inst_11 A _inst_8 _inst_12) (LinearMap.comp.{u2, u2, u2, u3, u1, u3} A A A N M N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_9 _inst_12 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (LinearEquiv.toLinearMap.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12 e) (LinearMap.comp.{u2, u2, u2, u3, u1, u1} A A A N M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))) f (LinearEquiv.toLinearMap.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u3} A A M N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) e))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f)
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {N : Type.{u3}} [_inst_11 : AddCommGroup.{u3} N] [_inst_12 : Module.{u2, u3} A N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11)] (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (e : LinearEquiv.{u2, u2, u1, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) => A) (LinearMap.comp.{u2, u2, u2, u3, u1, u3} A A A N M N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_9 _inst_12 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearEquiv.toLinearMap.{u2, u2, u1, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12 e) (LinearMap.comp.{u2, u2, u2, u3, u1, u1} A A A N M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) f (LinearEquiv.toLinearMap.{u2, u2, u3, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u3} A A M N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) e))))) (FunLike.coe.{max (succ u2) (succ u3), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.semiring.{u2, u3} A N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) => A) _x) (MulHomClass.toFunLike.{max u2 u3, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.semiring.{u2, u3} A N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.semiring.{u2, u3} A N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u3, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.semiring.{u2, u3} A N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.semiring.{u2, u3} A N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.semiring.{u2, u3} A N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u3, u2} N _inst_11 A _inst_8 _inst_12) (LinearMap.comp.{u2, u2, u2, u3, u1, u3} A A A N M N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_9 _inst_12 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearEquiv.toLinearMap.{u2, u2, u1, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12 e) (LinearMap.comp.{u2, u2, u2, u3, u1, u1} A A A N M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) f (LinearEquiv.toLinearMap.{u2, u2, u3, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u3} A A M N (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) e))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f)
Case conversion may be inaccurate. Consider using '#align linear_map.det_conj LinearMap.det_conjₓ'. -/
/-- Conjugating a linear map by a linear equiv does not change its determinant. -/
@[simp]
@@ -502,7 +502,7 @@ theorem det_conj {N : Type _} [AddCommGroup N] [Module A N] (f : M →ₗ[A] M)
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_11 : CommRing.{u2} A] [_inst_12 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12), (IsUnit.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.monoid.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) f) -> (IsUnit.{u2} A (Ring.toMonoid.{u2} A (CommRing.toRing.{u2} A _inst_11)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_11 _inst_12) f))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_11 : CommRing.{u2} A] [_inst_12 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12), (IsUnit.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.monoid.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) f) -> (IsUnit.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) f) (MonoidWithZero.toMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) f) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) f) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) f) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) f) _inst_11)))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) _inst_2 _inst_12)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_11 _inst_12) f))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_11 : CommRing.{u2} A] [_inst_12 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12), (IsUnit.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.monoid.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) f) -> (IsUnit.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) f) (MonoidWithZero.toMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) f) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) f) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) f) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) f) _inst_11)))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_11)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_11 _inst_12) f))
Case conversion may be inaccurate. Consider using '#align linear_map.is_unit_det LinearMap.isUnit_detₓ'. -/
/-- If a linear map is invertible, so is its determinant. -/
theorem isUnit_det {A : Type _} [CommRing A] [Module A M] (f : M →ₗ[A] M) (hf : IsUnit f) :
@@ -517,7 +517,7 @@ theorem isUnit_det {A : Type _} [CommRing A] [Module A M] (f : M →ₗ[A] M) (h
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12), (Ne.{succ u2} 𝕜 (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) => (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) -> 𝕜) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} 𝕜 1 (OfNat.mk.{u2} 𝕜 1 (One.one.{u2} 𝕜 (AddMonoidWithOne.toOne.{u2} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u2} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u2} 𝕜 (Ring.toAddCommGroupWithOne.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11)))))))))) -> (FiniteDimensional.{u2, u1} 𝕜 M (Field.toDivisionRing.{u2} 𝕜 _inst_11) _inst_2 _inst_12)
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12), (Ne.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12)))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (NonAssocRing.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (DivisionRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Field.toDivisionRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) _inst_11))))))) -> (FiniteDimensional.{u2, u1} 𝕜 M (Field.toDivisionRing.{u2} 𝕜 _inst_11) _inst_2 _inst_12)
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12), (Ne.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (DivisionSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Semifield.toDivisionSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Field.toSemifield.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) _inst_11))))))) -> (FiniteDimensional.{u2, u1} 𝕜 M (Field.toDivisionRing.{u2} 𝕜 _inst_11) _inst_2 _inst_12)
Case conversion may be inaccurate. Consider using '#align linear_map.finite_dimensional_of_det_ne_one LinearMap.finiteDimensional_of_det_ne_oneₓ'. -/
/-- If a linear map has determinant different from `1`, then the space is finite-dimensional. -/
theorem finiteDimensional_of_det_ne_one {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] (f : M →ₗ[𝕜] M)
@@ -536,7 +536,7 @@ theorem finiteDimensional_of_det_ne_one {𝕜 : Type _} [Field 𝕜] [Module
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12}, (Eq.{succ u2} 𝕜 (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) => (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) -> 𝕜) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} 𝕜 0 (OfNat.mk.{u2} 𝕜 0 (Zero.zero.{u2} 𝕜 (MulZeroClass.toHasZero.{u2} 𝕜 (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} 𝕜 (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))))))))) -> (LT.lt.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Preorder.toLT.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteSemilatticeInf.toPartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteLattice.toCompleteSemilatticeInf.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.completeLattice.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (LinearMap.range.{u2, u2, u1, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (LinearMap.semilinearMapClass.{u2, u2, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11)))))) (RingHomSurjective.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11)))) f) (Top.top.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.hasTop.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12}, (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12)))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommMonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommGroupWithZero.toCommMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Semifield.toCommGroupWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Field.toSemifield.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) _inst_11))))))) -> (LT.lt.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Preorder.toLT.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.completeLattice.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (LinearMap.range.{u2, u2, u1, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (LinearMap.instSemilinearMapClassLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11)))))) (RingHomSurjective.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))) f) (Top.top.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.instTopSubmodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12}, (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommMonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommGroupWithZero.toCommMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Semifield.toCommGroupWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Field.toSemifield.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) _inst_11))))))) -> (LT.lt.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Preorder.toLT.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.completeLattice.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (LinearMap.range.{u2, u2, u1, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (LinearMap.instSemilinearMapClassLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))))) (RingHomSurjective.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))) f) (Top.top.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.instTopSubmodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))
Case conversion may be inaccurate. Consider using '#align linear_map.range_lt_top_of_det_eq_zero LinearMap.range_lt_top_of_det_eq_zeroₓ'. -/
/-- If the determinant of a map vanishes, then the map is not onto. -/
theorem range_lt_top_of_det_eq_zero {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] {f : M →ₗ[𝕜] M}
@@ -552,7 +552,7 @@ theorem range_lt_top_of_det_eq_zero {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M]
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12}, (Eq.{succ u2} 𝕜 (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) => (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) -> 𝕜) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} 𝕜 0 (OfNat.mk.{u2} 𝕜 0 (Zero.zero.{u2} 𝕜 (MulZeroClass.toHasZero.{u2} 𝕜 (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} 𝕜 (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))))))))) -> (LT.lt.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Preorder.toLT.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteSemilatticeInf.toPartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteLattice.toCompleteSemilatticeInf.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.completeLattice.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (Bot.bot.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.hasBot.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)) (LinearMap.ker.{u2, u2, u1, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (LinearMap.semilinearMapClass.{u2, u2, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11)))))) f))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12}, (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12)))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommMonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommGroupWithZero.toCommMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Semifield.toCommGroupWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Field.toSemifield.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) _inst_11))))))) -> (LT.lt.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Preorder.toLT.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.completeLattice.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (Bot.bot.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.instBotSubmodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)) (LinearMap.ker.{u2, u2, u1, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (LinearMap.instSemilinearMapClassLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11)))))) f))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12}, (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommMonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommGroupWithZero.toCommMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Semifield.toCommGroupWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Field.toSemifield.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) _inst_11))))))) -> (LT.lt.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Preorder.toLT.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.completeLattice.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (Bot.bot.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.instBotSubmodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)) (LinearMap.ker.{u2, u2, u1, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (LinearMap.instSemilinearMapClassLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))))) f))
Case conversion may be inaccurate. Consider using '#align linear_map.bot_lt_ker_of_det_eq_zero LinearMap.bot_lt_ker_of_det_eq_zeroₓ'. -/
/-- If the determinant of a map vanishes, then the map is not injective. -/
theorem bot_lt_ker_of_det_eq_zero {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] {f : M →ₗ[𝕜] M}
@@ -572,7 +572,7 @@ namespace LinearEquiv
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)], MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))
but is expected to have type
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)], MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u1} R (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))))
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)], MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u1} R (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))
Case conversion may be inaccurate. Consider using '#align linear_equiv.det LinearEquiv.detₓ'. -/
/-- On a `linear_equiv`, the domain of `linear_map.det` can be promoted to `Rˣ`. -/
protected def det : (M ≃ₗ[R] M) →* Rˣ :=
@@ -584,7 +584,7 @@ protected def det : (M ≃ₗ[R] M) →* Rˣ :=
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (f : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3), Eq.{succ u1} R ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (HasLiftT.mk.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (CoeTCₓ.coe.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (coeBase.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (Units.hasCoe.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) f)) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (HasLiftT.mk.{succ u2, succ u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (CoeTCₓ.coe.{succ u2, succ u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (coeBase.{succ u2, succ u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.LinearMap.hasCoe.{u1, u1, u2, u2} R R M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))))) f))
but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 f)) (Units.val.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3)))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 f))
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 f)) (Units.val.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 f))
Case conversion may be inaccurate. Consider using '#align linear_equiv.coe_det LinearEquiv.coe_detₓ'. -/
@[simp]
theorem coe_det (f : M ≃ₗ[R] M) : ↑f.det = LinearMap.det (f : M →ₗ[R] M) :=
@@ -595,7 +595,7 @@ theorem coe_det (f : M ≃ₗ[R] M) : ↑f.det = LinearMap.det (f : M →ₗ[R]
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (f : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3), Eq.{succ u1} R ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (HasLiftT.mk.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (CoeTCₓ.coe.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (coeBase.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (Units.hasCoe.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Inv.inv.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Units.hasInv.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) f))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (HasLiftT.mk.{succ u2, succ u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (CoeTCₓ.coe.{succ u2, succ u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (coeBase.{succ u2, succ u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.LinearMap.hasCoe.{u1, u1, u2, u2} R R M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))))) (LinearEquiv.symm.{u1, u1, u2, u2} R R M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) f)))
but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (LinearEquiv.symm.{u2, u2, u1, u1} R R M M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) f))) (Units.val.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (Inv.inv.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) f) (Units.instInv.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) f))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3)))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (LinearEquiv.symm.{u2, u2, u1, u1} R R M M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) f)))
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (LinearEquiv.symm.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) f))) (Units.val.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (Inv.inv.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f) (Units.instInv.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) f))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (LinearEquiv.symm.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) f)))
Case conversion may be inaccurate. Consider using '#align linear_equiv.coe_inv_det LinearEquiv.coe_inv_detₓ'. -/
@[simp]
theorem coe_inv_det (f : M ≃ₗ[R] M) : ↑f.det⁻¹ = LinearMap.det (f.symm : M →ₗ[R] M) :=
@@ -606,7 +606,7 @@ theorem coe_inv_det (f : M ≃ₗ[R] M) : ↑f.det⁻¹ = LinearMap.det (f.symm
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)], Eq.{succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) (LinearEquiv.refl.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) (OfNat.ofNat.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) 1 (OfNat.mk.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) 1 (One.one.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (MulOneClass.toHasOne.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))))))
but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)], Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) (LinearEquiv.refl.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (InvOneClass.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (DivInvOneMonoid.toInvOneClass.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (DivisionMonoid.toDivInvOneMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (DivisionCommMonoid.toDivisionMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (CommGroup.toDivisionCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (Units.instCommGroupUnitsToMonoid.{u2} R (CommRing.toCommMonoid.{u2} R _inst_1)))))))))
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)], Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (InvOneClass.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (DivInvOneMonoid.toInvOneClass.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (DivisionMonoid.toDivInvOneMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (DivisionCommMonoid.toDivisionMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (CommGroup.toDivisionCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (Units.instCommGroupUnitsToMonoid.{u2} R (CommRing.toCommMonoid.{u2} R _inst_1)))))))))
Case conversion may be inaccurate. Consider using '#align linear_equiv.det_refl LinearEquiv.det_reflₓ'. -/
@[simp]
theorem det_refl : (LinearEquiv.refl R M).det = 1 :=
@@ -617,7 +617,7 @@ theorem det_refl : (LinearEquiv.refl R M).det = 1 :=
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (f : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (g : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3), Eq.{succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) (LinearEquiv.trans.{u1, u1, u1, u2, u2, u2} R R R M M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomCompTriple.right_ids.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (RingHomCompTriple.right_ids.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (LinearEquiv.det._proof_2.{u1} R _inst_1) f g)) (HMul.hMul.{u1, u1, u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (instHMul.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (MulOneClass.toHasMul.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) g) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) f))
but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (g : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (LinearEquiv.trans.{u2, u2, u2, u1, u1, u1} R R R M M M (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)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 _inst_3 (RingHom.id.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHom.id.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHom.id.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (RingHomCompTriple.ids.{u2, 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))))) (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))) (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))) (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))) f g)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) (LinearEquiv.trans.{u2, u2, u2, u1, u1, u1} R R R M M M (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)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 _inst_3 (RingHom.id.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHom.id.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHom.id.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (RingHomCompTriple.ids.{u2, 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))))) (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))) (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))) (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))) f g)) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) g) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) f) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) g) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) g) (MulOneClass.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) g) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) g) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) f))
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (g : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.trans.{u2, u2, u2, u1, u1, u1} R R R M M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) f g)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) (LinearEquiv.trans.{u2, u2, u2, u1, u1, u1} R R R M M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) f g)) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) g) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) g) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) g) (MulOneClass.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) g) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) g) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) f))
Case conversion may be inaccurate. Consider using '#align linear_equiv.det_trans LinearEquiv.det_transₓ'. -/
@[simp]
theorem det_trans (f g : M ≃ₗ[R] M) : (f.trans g).det = g.det * f.det :=
@@ -628,7 +628,7 @@ theorem det_trans (f g : M ≃ₗ[R] M) : (f.trans g).det = g.det * f.det :=
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (f : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3), Eq.{succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) (LinearEquiv.symm.{u1, u1, u2, u2} R R M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) f)) (Inv.inv.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Units.hasInv.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) f))
but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (LinearEquiv.symm.{u2, u2, u1, u1} R R M M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) f)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) (LinearEquiv.symm.{u2, u2, u1, u1} R R M M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) f)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (a : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) a) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) (Inv.inv.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (InvOneClass.toInv.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvOneMonoid.toInvOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivisionMonoid.toDivInvOneMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivisionMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) f))
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearEquiv.symm.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) f)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) (LinearEquiv.symm.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) f)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (a : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) a) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) (Inv.inv.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (InvOneClass.toInv.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvOneMonoid.toInvOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivisionMonoid.toDivInvOneMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivisionMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) f))
Case conversion may be inaccurate. Consider using '#align linear_equiv.det_symm LinearEquiv.det_symmₓ'. -/
@[simp]
theorem det_symm (f : M ≃ₗ[R] M) : f.symm.det = f.det⁻¹ :=
@@ -639,7 +639,7 @@ theorem det_symm (f : M ≃ₗ[R] M) : f.symm.det = f.det⁻¹ :=
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] [_inst_5 : Module.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] (f : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (e : LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5), Eq.{succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (coeFn.{max (succ u1) (succ u3), max (succ u3) (succ u1)} (MonoidHom.{u3, u1} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u3, u1} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u3, u1} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u3} R _inst_1 M' _inst_4 _inst_5) (LinearEquiv.trans.{u1, u1, u1, u3, u2, u3} R R R M' M M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomCompTriple.right_ids.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (RingHomCompTriple.right_ids.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (LinearEquiv.det._proof_2.{u1} R _inst_1) (LinearEquiv.trans.{u1, u1, u1, u3, u2, u2} R R R M' M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomCompTriple.right_ids.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (RingHomCompTriple.right_ids.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (LinearEquiv.symm.{u1, u1, u2, u3} R R M M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) e) f) e)) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) f)
but is expected to have type
- forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u1}} [_inst_4 : AddCommGroup.{u1} M'] [_inst_5 : Module.{u3, u1} R M' (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4)] (f : LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (e : LinearEquiv.{u3, u3, u2, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) => Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (LinearEquiv.trans.{u3, u3, u3, u1, u2, u1} R R R M' M M' (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)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_3 _inst_5 (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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)))) (RingHomCompTriple.ids.{u3, u3} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (RingHomCompTriple.ids.{u3, u3} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) (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))) (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.trans.{u3, u3, u3, u1, u2, u2} R R R M' M M (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)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHomCompTriple.ids.{u3, u3} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (RingHomCompTriple.ids.{u3, u3} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) (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))) (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.symm.{u3, u3, u2, u1} R R M M' (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) e) f) e)) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (MonoidHom.{u1, u3} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (fun (_x : LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) => Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u3, u1, u3} (MonoidHom.{u1, u3} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5))))) (MulOneClass.toMul.{u3} (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u3, u1, u3} (MonoidHom.{u1, u3} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u3} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))))) (LinearEquiv.det.{u3, u1} R _inst_1 M' _inst_4 _inst_5) (LinearEquiv.trans.{u3, u3, u3, u1, u2, u1} R R R M' M M' (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)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_3 _inst_5 (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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)))) (RingHomCompTriple.ids.{u3, u3} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (RingHomCompTriple.ids.{u3, u3} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) (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))) (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.trans.{u3, u3, u3, u1, u2, u2} R R R M' M M (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)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHomCompTriple.ids.{u3, u3} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (RingHomCompTriple.ids.{u3, u3} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) (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))) (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.symm.{u3, u3, u2, u1} R R M M' (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) e) f) e)) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (MonoidHom.{u2, u3} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u2 u3, u2, u3} (MonoidHom.{u2, u3} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (MulOneClass.toMul.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u3} (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u3, u2, u3} (MonoidHom.{u2, u3} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (MonoidHom.monoidHomClass.{u2, u3} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))))) (LinearEquiv.det.{u3, u2} R _inst_1 M _inst_2 _inst_3) f)
+ forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u1}} [_inst_4 : AddCommGroup.{u1} M'] [_inst_5 : Module.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4)] (f : LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (e : LinearEquiv.{u3, u3, u2, u1} 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))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) => Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (LinearEquiv.trans.{u3, u3, u3, u1, u2, u1} R R R M' M M' (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)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_3 _inst_5 (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)))) (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)))) (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)))) (RingHomCompTriple.ids.{u3, u3} 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))))) (RingHomCompTriple.ids.{u3, u3} 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))))) (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))) (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))) (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.trans.{u3, u3, u3, u1, u2, u2} R R R M' M M (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)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 _inst_3 (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)))) (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)))) (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)))) (RingHomCompTriple.ids.{u3, u3} 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))))) (RingHomCompTriple.ids.{u3, u3} 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))))) (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))) (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))) (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.symm.{u3, u3, u2, u1} R R M M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5 (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))) e) f) e)) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (MonoidHom.{u1, u3} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (fun (_x : LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) => Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u3, u1, u3} (MonoidHom.{u1, u3} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5))))) (MulOneClass.toMul.{u3} (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u3, u1, u3} (MonoidHom.{u1, u3} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u3} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (LinearEquiv.det.{u3, u1} R _inst_1 M' _inst_4 _inst_5) (LinearEquiv.trans.{u3, u3, u3, u1, u2, u1} R R R M' M M' (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)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_3 _inst_5 (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)))) (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)))) (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)))) (RingHomCompTriple.ids.{u3, u3} 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))))) (RingHomCompTriple.ids.{u3, u3} 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))))) (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))) (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))) (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.trans.{u3, u3, u3, u1, u2, u2} R R R M' M M (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)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 _inst_3 (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)))) (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)))) (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)))) (RingHomCompTriple.ids.{u3, u3} 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))))) (RingHomCompTriple.ids.{u3, u3} 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))))) (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))) (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))) (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.symm.{u3, u3, u2, u1} R R M M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5 (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))) e) f) e)) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (MonoidHom.{u2, u3} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u2 u3, u2, u3} (MonoidHom.{u2, u3} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MulOneClass.toMul.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u3} (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u3, u2, u3} (MonoidHom.{u2, u3} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (MonoidHom.monoidHomClass.{u2, u3} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))))) (LinearEquiv.det.{u3, u2} R _inst_1 M _inst_2 _inst_3) f)
Case conversion may be inaccurate. Consider using '#align linear_equiv.det_conj LinearEquiv.det_conjₓ'. -/
/-- Conjugating a linear equiv by a linear equiv does not change its determinant. -/
@[simp]
@@ -653,7 +653,7 @@ end LinearEquiv
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} A (HMul.hMul.{u2, u2, u2} A A A (instHMul.{u2} A (Distrib.toHasMul.{u2} A (Ring.toDistrib.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (HasLiftT.mk.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CoeTCₓ.coe.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (coeBase.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))))) f)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (HasLiftT.mk.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CoeTCₓ.coe.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (coeBase.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))))) (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f)))) (OfNat.ofNat.{u2} A 1 (OfNat.mk.{u2} A 1 (One.one.{u2} A (AddMonoidWithOne.toOne.{u2} A (AddGroupWithOne.toAddMonoidWithOne.{u2} A (AddCommGroupWithOne.toAddGroupWithOne.{u2} A (Ring.toAddCommGroupWithOne.{u2} A (CommRing.toRing.{u2} A _inst_8))))))))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (NonUnitalNonAssocRing.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (NonAssocRing.toNonUnitalNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) _inst_8))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f)))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (NonAssocRing.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) _inst_8)))))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (NonUnitalNonAssocRing.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (NonAssocRing.toNonUnitalNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) _inst_8))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f)))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) _inst_8)))))
Case conversion may be inaccurate. Consider using '#align linear_equiv.det_mul_det_symm LinearEquiv.det_mul_det_symmₓ'. -/
/-- The determinants of a `linear_equiv` and its inverse multiply to 1. -/
@[simp]
@@ -665,7 +665,7 @@ theorem LinearEquiv.det_mul_det_symm {A : Type _} [CommRing A] [Module A M] (f :
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} A (HMul.hMul.{u2, u2, u2} A A A (instHMul.{u2} A (Distrib.toHasMul.{u2} A (Ring.toDistrib.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (HasLiftT.mk.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CoeTCₓ.coe.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (coeBase.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))))) (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f))) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (HasLiftT.mk.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CoeTCₓ.coe.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (coeBase.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))))) f))) (OfNat.ofNat.{u2} A 1 (OfNat.mk.{u2} A 1 (One.one.{u2} A (AddMonoidWithOne.toOne.{u2} A (AddGroupWithOne.toAddMonoidWithOne.{u2} A (AddCommGroupWithOne.toAddGroupWithOne.{u2} A (Ring.toAddCommGroupWithOne.{u2} A (CommRing.toRing.{u2} A _inst_8))))))))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f))) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f))) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f))) (NonUnitalNonAssocRing.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f))) (NonAssocRing.toNonUnitalNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f))) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f))) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f))) _inst_8))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f))) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f))) (NonAssocRing.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f))) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f))) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f))) _inst_8)))))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (NonUnitalNonAssocRing.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (NonAssocRing.toNonUnitalNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) _inst_8))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (Semiring.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) f))) _inst_8)))))
Case conversion may be inaccurate. Consider using '#align linear_equiv.det_symm_mul_det LinearEquiv.det_symm_mul_detₓ'. -/
/-- The determinants of a `linear_equiv` and its inverse multiply to 1. -/
@[simp]
@@ -677,7 +677,7 @@ theorem LinearEquiv.det_symm_mul_det {A : Type _} [CommRing A] [Module A M] (f :
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] [_inst_5 : Module.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] {ι : Type.{u4}} [_inst_6 : DecidableEq.{succ u4} ι] [_inst_7 : Fintype.{u4} ι] (f : LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (v : Basis.{u4, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (v' : Basis.{u4, u1, u3} ι R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5), IsUnit.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Matrix.det.{u1, u4} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (coeFn.{max (succ (max u2 u3)) (succ (max u4 u1)), max (succ (max u2 u3)) (succ (max u4 u1))} (LinearEquiv.{u1, u1, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.toMatrix._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.toMatrix._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearMap.toMatrix._proof_3.{u1, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (_x : LinearEquiv.{u1, u1, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.toMatrix._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.toMatrix._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearMap.toMatrix._proof_3.{u1, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) -> (Matrix.{u4, u4, u1} ι ι R)) (LinearEquiv.hasCoeToFun.{u1, u1, max u2 u3, max u4 u1} R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearMap.toMatrix._proof_3.{u1, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.toMatrix._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.toMatrix._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.toMatrix.{u1, u4, u4, u2, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 v v') ((fun (a : Sort.{max (succ u2) (succ u3)}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{max (succ u2) (succ u3), max (succ u2) (succ u3)} a b] => self.0) (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (HasLiftT.mk.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (CoeTCₓ.coe.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (coeBase.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearEquiv.LinearMap.hasCoe.{u1, u1, u2, u3} R R M M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))))) f)))
but is expected to have type
- forall {R : Type.{u4}} [_inst_1 : CommRing.{u4} R] {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] [_inst_3 : Module.{u4, u3} R M (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] {M' : Type.{u2}} [_inst_4 : AddCommGroup.{u2} M'] [_inst_5 : Module.{u4, u2} R M' (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] (f : LinearEquiv.{u4, u4, u3, u2} R R (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (RingHom.id.{u4} R (NonAssocRing.toNonAssocSemiring.{u4} R (Ring.toNonAssocRing.{u4} R (CommRing.toRing.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (v : Basis.{u1, u4, u3} ι R M (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (v' : Basis.{u1, u4, u2} ι R M' (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5), IsUnit.{u4} R (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)))) (Matrix.det.{u4, u1} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (FunLike.coe.{max (max (max (succ u4) (succ u3)) (succ u2)) (succ u1), max (succ u3) (succ u2), max (succ u4) (succ u1)} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (fun (_x : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) => Matrix.{u1, u1, u4} ι ι R) _x) (SMulHomClass.toFunLike.{max (max (max u4 u3) u2) u1, u4, max u3 u2, max u4 u1} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (SMulZeroClass.toSMul.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toZero.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Module.toDistribMulAction.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))))))) (SMulZeroClass.toSMul.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (AddMonoid.toZero.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (AddMonoid.toAddZeroClass.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (Module.toDistribMulAction.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max (max u4 u3) u2) u1, u4, max u3 u2, max u4 u1} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (Module.toDistribMulAction.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5))))) (Module.toDistribMulAction.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (SemilinearMapClass.distribMulActionHomClass.{u4, max u3 u2, max u4 u1, max (max (max u4 u3) u2) u1} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (SemilinearEquivClass.instSemilinearMapClass.{u4, u4, max u3 u2, max u4 u1, max (max (max u4 u3) u2) u1} R R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u4, u4, max u3 u2, max u4 u1} R R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (LinearMap.toMatrix.{u4, u1, u1, u3, u2} R (CommRing.toCommSemiring.{u4} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 v v') (LinearEquiv.toLinearMap.{u4, u4, u3, u2} R R (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (RingHom.id.{u4} R (NonAssocRing.toNonAssocSemiring.{u4} R (Ring.toNonAssocRing.{u4} R (CommRing.toRing.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 f)))
+ forall {R : Type.{u4}} [_inst_1 : CommRing.{u4} R] {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] [_inst_3 : Module.{u4, u3} R M (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] {M' : Type.{u2}} [_inst_4 : AddCommGroup.{u2} M'] [_inst_5 : Module.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] (f : LinearEquiv.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (v : Basis.{u1, u4, u3} ι R M (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (v' : Basis.{u1, u4, u2} ι R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5), IsUnit.{u4} R (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (Matrix.det.{u4, u1} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (FunLike.coe.{max (max (max (succ u4) (succ u3)) (succ u2)) (succ u1), max (succ u3) (succ u2), max (succ u4) (succ u1)} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (fun (_x : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) => Matrix.{u1, u1, u4} ι ι R) _x) (SMulHomClass.toFunLike.{max (max (max u4 u3) u2) u1, u4, max u3 u2, max u4 u1} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (SMulZeroClass.toSMul.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toZero.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Module.toDistribMulAction.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))))))) (SMulZeroClass.toSMul.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (AddMonoid.toZero.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (AddMonoid.toAddZeroClass.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (Module.toDistribMulAction.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max (max u4 u3) u2) u1, u4, max u3 u2, max u4 u1} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (Module.toDistribMulAction.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5))))) (Module.toDistribMulAction.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (SemilinearMapClass.distribMulActionHomClass.{u4, max u3 u2, max u4 u1, max (max (max u4 u3) u2) u1} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (SemilinearEquivClass.instSemilinearMapClass.{u4, u4, max u3 u2, max u4 u1, max (max (max u4 u3) u2) u1} R R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u4, u4, max u3 u2, max u4 u1} R R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (LinearMap.toMatrix.{u4, u1, u1, u3, u2} R (CommRing.toCommSemiring.{u4} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 v v') (LinearEquiv.toLinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 f)))
Case conversion may be inaccurate. Consider using '#align linear_equiv.is_unit_det LinearEquiv.isUnit_detₓ'. -/
-- Cannot be stated using `linear_map.det` because `f` is not an endomorphism.
theorem LinearEquiv.isUnit_det (f : M ≃ₗ[R] M') (v : Basis ι R M) (v' : Basis ι R M') :
@@ -691,7 +691,7 @@ theorem LinearEquiv.isUnit_det (f : M ≃ₗ[R] M') (v : Basis ι R M) (v' : Bas
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), IsUnit.{u2} A (Ring.toMonoid.{u2} A (CommRing.toRing.{u2} A _inst_8)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (HasLiftT.mk.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CoeTCₓ.coe.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (coeBase.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))))) f))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), IsUnit.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (MonoidWithZero.toMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) _inst_8)))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), IsUnit.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (MonoidWithZero.toMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) _inst_8)))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f))
Case conversion may be inaccurate. Consider using '#align linear_equiv.is_unit_det' LinearEquiv.isUnit_det'ₓ'. -/
/-- Specialization of `linear_equiv.is_unit_det` -/
theorem LinearEquiv.isUnit_det' {A : Type _} [CommRing A] [Module A M] (f : M ≃ₗ[A] M) :
@@ -703,7 +703,7 @@ theorem LinearEquiv.isUnit_det' {A : Type _} [CommRing A] [Module A M] (f : M
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_8 : Field.{u2} 𝕜] [_inst_9 : Module.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} 𝕜 (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) => (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> 𝕜) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)) _inst_9) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (HasLiftT.mk.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CoeTCₓ.coe.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (coeBase.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))))))) (LinearEquiv.symm.{u2, u2, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) f))) (Inv.inv.{u2} 𝕜 (DivInvMonoid.toHasInv.{u2} 𝕜 (DivisionRing.toDivInvMonoid.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) => (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> 𝕜) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)) _inst_9) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (HasLiftT.mk.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CoeTCₓ.coe.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (coeBase.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))))))) f)))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_8 : Field.{u2} 𝕜] [_inst_9 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => 𝕜) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) f))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)) _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) f))) (Inv.inv.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => 𝕜) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (Field.toInv.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => 𝕜) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) _inst_8) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)) _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_8 : Field.{u2} 𝕜] [_inst_9 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => 𝕜) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) f))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)) _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) f))) (Inv.inv.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => 𝕜) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (Field.toInv.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => 𝕜) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) _inst_8) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} 𝕜 M (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (CommSemiring.toSemiring.{u2} 𝕜 (CommRing.toCommSemiring.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)) _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)))
Case conversion may be inaccurate. Consider using '#align linear_equiv.det_coe_symm LinearEquiv.det_coe_symmₓ'. -/
/-- The determinant of `f.symm` is the inverse of that of `f` when `f` is a linear equiv. -/
theorem LinearEquiv.det_coe_symm {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] (f : M ≃ₗ[𝕜] M) :
@@ -715,7 +715,7 @@ theorem LinearEquiv.det_coe_symm {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] (f
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] [_inst_5 : Module.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] {ι : Type.{u4}} [_inst_6 : DecidableEq.{succ u4} ι] [_inst_7 : Fintype.{u4} ι] {f : LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5} {v : Basis.{u4, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3} {v' : Basis.{u4, u1, u3} ι R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5}, (IsUnit.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Matrix.det.{u1, u4} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (coeFn.{max (succ (max u2 u3)) (succ (max u4 u1)), max (succ (max u2 u3)) (succ (max u4 u1))} (LinearEquiv.{u1, u1, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_1.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_2.{u1} R _inst_1) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearEquiv.ofIsUnitDet._proof_3.{u1, u3} R _inst_1 M' _inst_4 _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (_x : LinearEquiv.{u1, u1, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_1.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_2.{u1} R _inst_1) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearEquiv.ofIsUnitDet._proof_3.{u1, u3} R _inst_1 M' _inst_4 _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) -> (Matrix.{u4, u4, u1} ι ι R)) (LinearEquiv.hasCoeToFun.{u1, u1, max u2 u3, max u4 u1} R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearEquiv.ofIsUnitDet._proof_3.{u1, u3} R _inst_1 M' _inst_4 _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_4.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_5.{u1} R _inst_1)) (LinearMap.toMatrix.{u1, u4, u4, u2, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 v v') f))) -> (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_6.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_7.{u1} R _inst_1) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5)
but is expected to have type
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] [_inst_5 : Module.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] {ι : Type.{u4}} [_inst_6 : DecidableEq.{succ u4} ι] [_inst_7 : Fintype.{u4} ι] {f : LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5} {v : Basis.{u4, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3} {v' : Basis.{u4, u1, u3} ι R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5}, (IsUnit.{u1} R (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Matrix.det.{u1, u4} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (FunLike.coe.{max (max (max (succ u1) (succ u2)) (succ u3)) (succ u4), max (succ u2) (succ u3), max (succ u1) (succ u4)} (LinearEquiv.{u1, u1, max u3 u2, max u1 u4} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (fun (_x : LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) => Matrix.{u4, u4, u1} ι ι R) _x) (SMulHomClass.toFunLike.{max (max (max u1 u2) u3) u4, u1, max u2 u3, max u1 u4} (LinearEquiv.{u1, u1, max u3 u2, max u1 u4} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (SMulZeroClass.toSMul.{u1, max u2 u3} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toZero.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u3} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u3} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u3} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))))))) (SMulZeroClass.toSMul.{u1, max u1 u4} R (Matrix.{u4, u4, u1} ι ι R) (AddMonoid.toZero.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u1, max u1 u4} R (Matrix.{u4, u4, u1} ι ι R) (AddMonoid.toAddZeroClass.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u1, max u1 u4} R (Matrix.{u4, u4, u1} ι ι R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (Module.toDistribMulAction.{u1, max u1 u4} R (Matrix.{u4, u4, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max (max u1 u2) u3) u4, u1, max u2 u3, max u1 u4} (LinearEquiv.{u1, u1, max u3 u2, max u1 u4} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (AddCommMonoid.toAddMonoid.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (Module.toDistribMulAction.{u1, max u2 u3} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5))))) (Module.toDistribMulAction.{u1, max u1 u4} R (Matrix.{u4, u4, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u3, max u1 u4, max (max (max u1 u2) u3) u4} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearEquiv.{u1, u1, max u3 u2, max u1 u4} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u3, max u1 u4, max (max (max u1 u2) u3) u4} R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearEquiv.{u1, u1, max u3 u2, max u1 u4} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u3, max u1 u4} R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (LinearMap.toMatrix.{u1, u4, u4, u2, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 v v') f))) -> (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5)
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] [_inst_5 : Module.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] {ι : Type.{u4}} [_inst_6 : DecidableEq.{succ u4} ι] [_inst_7 : Fintype.{u4} ι] {f : LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5} {v : Basis.{u4, u1, u2} ι R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3} {v' : Basis.{u4, u1, u3} ι R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5}, (IsUnit.{u1} R (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.det.{u1, u4} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (FunLike.coe.{max (max (max (succ u1) (succ u2)) (succ u3)) (succ u4), max (succ u2) (succ u3), max (succ u1) (succ u4)} (LinearEquiv.{u1, u1, max u3 u2, max u1 u4} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (fun (_x : LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) => Matrix.{u4, u4, u1} ι ι R) _x) (SMulHomClass.toFunLike.{max (max (max u1 u2) u3) u4, u1, max u2 u3, max u1 u4} (LinearEquiv.{u1, u1, max u3 u2, max u1 u4} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (SMulZeroClass.toSMul.{u1, max u2 u3} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toZero.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u3} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u3} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u3} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))))))) (SMulZeroClass.toSMul.{u1, max u1 u4} R (Matrix.{u4, u4, u1} ι ι R) (AddMonoid.toZero.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u1, max u1 u4} R (Matrix.{u4, u4, u1} ι ι R) (AddMonoid.toAddZeroClass.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u1, max u1 u4} R (Matrix.{u4, u4, u1} ι ι R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (Module.toDistribMulAction.{u1, max u1 u4} R (Matrix.{u4, u4, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max (max u1 u2) u3) u4, u1, max u2 u3, max u1 u4} (LinearEquiv.{u1, u1, max u3 u2, max u1 u4} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (AddCommMonoid.toAddMonoid.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (Module.toDistribMulAction.{u1, max u2 u3} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5))))) (Module.toDistribMulAction.{u1, max u1 u4} R (Matrix.{u4, u4, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u3, max u1 u4, max (max (max u1 u2) u3) u4} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearEquiv.{u1, u1, max u3 u2, max u1 u4} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u3, max u1 u4, max (max (max u1 u2) u3) u4} R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearEquiv.{u1, u1, max u3 u2, max u1 u4} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u3, max u1 u4} R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (LinearMap.toMatrix.{u1, u4, u4, u2, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 v v') f))) -> (LinearEquiv.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5)
Case conversion may be inaccurate. Consider using '#align linear_equiv.of_is_unit_det LinearEquiv.ofIsUnitDetₓ'. -/
/-- Builds a linear equivalence from a linear map whose determinant in some bases is a unit. -/
@[simps]
@@ -745,7 +745,7 @@ def LinearEquiv.ofIsUnitDet {f : M →ₗ[R] M'} {v : Basis ι R M} {v' : Basis
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] [_inst_5 : Module.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] {ι : Type.{u4}} [_inst_6 : DecidableEq.{succ u4} ι] [_inst_7 : Fintype.{u4} ι] {f : LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5} {v : Basis.{u4, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3} {v' : Basis.{u4, u1, u3} ι R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5} (h : IsUnit.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Matrix.det.{u1, u4} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (coeFn.{max (succ (max u2 u3)) (succ (max u4 u1)), max (succ (max u2 u3)) (succ (max u4 u1))} (LinearEquiv.{u1, u1, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.toMatrix._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.toMatrix._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearMap.toMatrix._proof_3.{u1, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (_x : LinearEquiv.{u1, u1, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.toMatrix._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.toMatrix._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearMap.toMatrix._proof_3.{u1, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) -> (Matrix.{u4, u4, u1} ι ι R)) (LinearEquiv.hasCoeToFun.{u1, u1, max u2 u3, max u4 u1} R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearMap.toMatrix._proof_3.{u1, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.toMatrix._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.toMatrix._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.toMatrix.{u1, u4, u4, u2, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 v v') f))), Eq.{max (succ u2) (succ u3)} (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) ((fun (a : Sort.{max (succ u2) (succ u3)}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{max (succ u2) (succ u3), max (succ u2) (succ u3)} a b] => self.0) (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_6.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_7.{u1} R _inst_1) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (HasLiftT.mk.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_6.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_7.{u1} R _inst_1) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (CoeTCₓ.coe.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_6.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_7.{u1} R _inst_1) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (coeBase.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_6.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_7.{u1} R _inst_1) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearEquiv.LinearMap.hasCoe.{u1, u1, u2, u3} R R M M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_6.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_7.{u1} R _inst_1))))) (LinearEquiv.ofIsUnitDet.{u1, u2, u3, u4} R _inst_1 M _inst_2 _inst_3 M' _inst_4 _inst_5 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 f v v' h)) f
but is expected to have type
- forall {R : Type.{u4}} [_inst_1 : CommRing.{u4} R] {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] [_inst_3 : Module.{u4, u3} R M (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] {M' : Type.{u2}} [_inst_4 : AddCommGroup.{u2} M'] [_inst_5 : Module.{u4, u2} R M' (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] {f : LinearMap.{u4, u4, u3, u2} R R (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (RingHom.id.{u4} R (NonAssocRing.toNonAssocSemiring.{u4} R (Ring.toNonAssocRing.{u4} R (CommRing.toRing.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5} {v : Basis.{u1, u4, u3} ι R M (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3} {v' : Basis.{u1, u4, u2} ι R M' (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5} (h : IsUnit.{u4} R (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)))) (Matrix.det.{u4, u1} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (FunLike.coe.{max (max (max (succ u4) (succ u3)) (succ u2)) (succ u1), max (succ u3) (succ u2), max (succ u4) (succ u1)} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (fun (_x : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) => Matrix.{u1, u1, u4} ι ι R) _x) (SMulHomClass.toFunLike.{max (max (max u4 u3) u2) u1, u4, max u3 u2, max u4 u1} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (SMulZeroClass.toSMul.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toZero.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Module.toDistribMulAction.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))))))) (SMulZeroClass.toSMul.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (AddMonoid.toZero.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (AddMonoid.toAddZeroClass.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (Module.toDistribMulAction.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max (max u4 u3) u2) u1, u4, max u3 u2, max u4 u1} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (Module.toDistribMulAction.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5))))) (Module.toDistribMulAction.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (SemilinearMapClass.distribMulActionHomClass.{u4, max u3 u2, max u4 u1, max (max (max u4 u3) u2) u1} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (SemilinearEquivClass.instSemilinearMapClass.{u4, u4, max u3 u2, max u4 u1, max (max (max u4 u3) u2) u1} R R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u4, u4, max u3 u2, max u4 u1} R R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (LinearMap.toMatrix.{u4, u1, u1, u3, u2} R (CommRing.toCommSemiring.{u4} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 v v') f))), Eq.{max (succ u3) (succ u2)} (LinearMap.{u4, u4, u3, u2} R R (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (RingHom.id.{u4} R (NonAssocRing.toNonAssocSemiring.{u4} R (Ring.toNonAssocRing.{u4} R (CommRing.toRing.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearEquiv.toLinearMap.{u4, u4, u3, u2} R R (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (RingHom.id.{u4} R (NonAssocRing.toNonAssocSemiring.{u4} R (Ring.toNonAssocRing.{u4} R (CommRing.toRing.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (LinearEquiv.ofIsUnitDet.{u4, u3, u2, u1} R _inst_1 M _inst_2 _inst_3 M' _inst_4 _inst_5 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 f v v' h)) f
+ forall {R : Type.{u4}} [_inst_1 : CommRing.{u4} R] {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] [_inst_3 : Module.{u4, u3} R M (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] {M' : Type.{u2}} [_inst_4 : AddCommGroup.{u2} M'] [_inst_5 : Module.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] {f : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5} {v : Basis.{u1, u4, u3} ι R M (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3} {v' : Basis.{u1, u4, u2} ι R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5} (h : IsUnit.{u4} R (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (Matrix.det.{u4, u1} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (FunLike.coe.{max (max (max (succ u4) (succ u3)) (succ u2)) (succ u1), max (succ u3) (succ u2), max (succ u4) (succ u1)} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (fun (_x : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) => Matrix.{u1, u1, u4} ι ι R) _x) (SMulHomClass.toFunLike.{max (max (max u4 u3) u2) u1, u4, max u3 u2, max u4 u1} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (SMulZeroClass.toSMul.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toZero.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Module.toDistribMulAction.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))))))) (SMulZeroClass.toSMul.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (AddMonoid.toZero.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (AddMonoid.toAddZeroClass.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (Module.toDistribMulAction.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max (max u4 u3) u2) u1, u4, max u3 u2, max u4 u1} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (Module.toDistribMulAction.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5))))) (Module.toDistribMulAction.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (SemilinearMapClass.distribMulActionHomClass.{u4, max u3 u2, max u4 u1, max (max (max u4 u3) u2) u1} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (SemilinearEquivClass.instSemilinearMapClass.{u4, u4, max u3 u2, max u4 u1, max (max (max u4 u3) u2) u1} R R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u4, u4, max u3 u2, max u4 u1} R R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (LinearMap.toMatrix.{u4, u1, u1, u3, u2} R (CommRing.toCommSemiring.{u4} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 v v') f))), Eq.{max (succ u3) (succ u2)} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearEquiv.toLinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (LinearEquiv.ofIsUnitDet.{u4, u3, u2, u1} R _inst_1 M _inst_2 _inst_3 M' _inst_4 _inst_5 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 f v v' h)) f
Case conversion may be inaccurate. Consider using '#align linear_equiv.coe_of_is_unit_det LinearEquiv.coe_ofIsUnitDetₓ'. -/
@[simp]
theorem LinearEquiv.coe_ofIsUnitDet {f : M →ₗ[R] M'} {v : Basis ι R M} {v' : Basis ι R M'}
@@ -759,7 +759,7 @@ theorem LinearEquiv.coe_ofIsUnitDet {f : M →ₗ[R] M'} {v : Basis ι R M} {v'
lean 3 declaration is
forall {𝕜 : Type.{u1}} [_inst_8 : Field.{u1} 𝕜] {M : Type.{u2}} [_inst_9 : AddCommGroup.{u2} M] [_inst_10 : Module.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9)] [_inst_11 : FiniteDimensional.{u1, u2} 𝕜 M (Field.toDivisionRing.{u1} 𝕜 _inst_8) _inst_9 _inst_10] (f : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))) (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10), (Ne.{succ u1} 𝕜 (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) _inst_9 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) _inst_9 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) => (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) -> 𝕜) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) _inst_9 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) (LinearMap.det.{u2, u1} M _inst_9 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)) _inst_10) f) (OfNat.ofNat.{u1} 𝕜 0 (OfNat.mk.{u1} 𝕜 0 (Zero.zero.{u1} 𝕜 (MulZeroClass.toHasZero.{u1} 𝕜 (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} 𝕜 (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))))))))))) -> (LinearEquiv.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))) (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))))) (LinearMap.equivOfDetNeZero._proof_1.{u1} 𝕜 _inst_8) (LinearMap.equivOfDetNeZero._proof_2.{u1} 𝕜 _inst_8) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10)
but is expected to have type
- forall {𝕜 : Type.{u1}} [_inst_8 : Field.{u1} 𝕜] {M : Type.{u2}} [_inst_9 : AddCommGroup.{u2} M] [_inst_10 : Module.{u1, u2} 𝕜 M (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9)] [_inst_11 : FiniteDimensional.{u1, u2} 𝕜 M (Field.toDivisionRing.{u1} 𝕜 _inst_8) _inst_9 _inst_10] (f : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10), (Ne.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) _inst_9 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (fun (_x : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) _inst_9 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) _inst_9 _inst_10)))))) (MulOneClass.toMul.{u1} 𝕜 (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) _inst_9 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) _inst_9 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8))))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) _inst_9 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))))) (LinearMap.det.{u2, u1} M _inst_9 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)) _inst_10) f) (OfNat.ofNat.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) 0 (Zero.toOfNat0.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) (CommMonoidWithZero.toZero.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) (CommGroupWithZero.toCommMonoidWithZero.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) (Semifield.toCommGroupWithZero.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) (Field.toSemifield.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) _inst_8))))))) -> (LinearEquiv.{u1, u1, u2, u2} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u1} 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u1} 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10)
+ forall {𝕜 : Type.{u1}} [_inst_8 : Field.{u1} 𝕜] {M : Type.{u2}} [_inst_9 : AddCommGroup.{u2} M] [_inst_10 : Module.{u1, u2} 𝕜 M (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9)] [_inst_11 : FiniteDimensional.{u1, u2} 𝕜 M (Field.toDivisionRing.{u1} 𝕜 _inst_8) _inst_9 _inst_10] (f : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10), (Ne.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.semiring.{u1, u2} 𝕜 M (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (fun (_x : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.semiring.{u1, u2} 𝕜 M (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.semiring.{u1, u2} 𝕜 M (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10))))) (MulOneClass.toMul.{u1} 𝕜 (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.semiring.{u1, u2} 𝕜 M (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.semiring.{u1, u2} 𝕜 M (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8))))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.semiring.{u1, u2} 𝕜 M (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))))) (LinearMap.det.{u2, u1} M _inst_9 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)) _inst_10) f) (OfNat.ofNat.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) 0 (Zero.toOfNat0.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) (CommMonoidWithZero.toZero.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) (CommGroupWithZero.toCommMonoidWithZero.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) (Semifield.toCommGroupWithZero.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) (Field.toSemifield.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (CommSemiring.toSemiring.{u1} 𝕜 (CommRing.toCommSemiring.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) _inst_8))))))) -> (LinearEquiv.{u1, u1, u2, u2} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u1} 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u1} 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10)
Case conversion may be inaccurate. Consider using '#align linear_map.equiv_of_det_ne_zero LinearMap.equivOfDetNeZeroₓ'. -/
/-- Builds a linear equivalence from a linear map on a finite-dimensional vector space whose
determinant is nonzero. -/
@@ -778,7 +778,7 @@ def LinearMap.equivOfDetNeZero {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCom
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (e : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (f : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (f' : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3), (forall (x : M), Eq.{succ u2} M (coeFn.{succ u2, succ u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => M -> M) (LinearMap.hasCoeToFun.{u1, u1, u2, u2} R R M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) f x) (coeFn.{succ u2, succ u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => M -> M) (LinearMap.hasCoeToFun.{u1, u1, u2, u2} R R M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) f' (coeFn.{succ u2, succ u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => M -> M) (LinearEquiv.hasCoeToFun.{u1, u1, u2, u2} R R M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) e x))) -> (Associated.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) f) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) f'))
but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (e : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (f : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (f' : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3), (forall (x : M), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M) x) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) f x) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) f' (FunLike.coe.{succ u1, succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M) _x) (SMulHomClass.toFunLike.{u1, u2, u1, u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R M M (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{u1, u2, u1, u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R M M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, u1, u1} R M M (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, u1, u1} R R M M (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (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))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, u1} R R M M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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)))))))) e x))) -> (Associated.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (MonoidWithZero.toMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) _inst_1)))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3)))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3)))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) f'))
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (e : LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (f : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (f' : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3), (forall (x : M), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M) x) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f x) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f' (FunLike.coe.{succ u1, succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M) _x) (SMulHomClass.toFunLike.{u1, u2, u1, u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R M M (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (Module.toDistribMulAction.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (Module.toDistribMulAction.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{u1, u2, u1, u1} (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R M M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (Module.toDistribMulAction.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Module.toDistribMulAction.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, u1, u1} R M M (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, u1, u1} R R M M (LinearEquiv.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) e x))) -> (Associated.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (MonoidWithZero.toMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) _inst_1)))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) f'))
Case conversion may be inaccurate. Consider using '#align linear_map.associated_det_of_eq_comp LinearMap.associated_det_of_eq_compₓ'. -/
theorem LinearMap.associated_det_of_eq_comp (e : M ≃ₗ[R] M) (f f' : M →ₗ[R] M)
(h : ∀ x, f x = f' (e x)) : Associated f.det f'.det :=
@@ -796,7 +796,7 @@ theorem LinearMap.associated_det_of_eq_comp (e : M ≃ₗ[R] M) (f f' : M →ₗ
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {N : Type.{u3}} [_inst_8 : AddCommGroup.{u3} N] [_inst_9 : Module.{u1, u3} R N (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8)] (f : LinearMap.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_3) (e : LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (e' : LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9), Associated.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) (LinearMap.comp.{u1, u1, u1, u2, u3, u2} R R R M N M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomCompTriple.ids.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) f ((fun (a : Sort.{max (succ u2) (succ u3)}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{max (succ u2) (succ u3), max (succ u2) (succ u3)} a b] => self.0) (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (HasLiftT.mk.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (CoeTCₓ.coe.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (coeBase.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u1, u1, u2, u3} R R M N (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))))) e))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) (LinearMap.comp.{u1, u1, u1, u2, u3, u2} R R R M N M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomCompTriple.ids.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) f ((fun (a : Sort.{max (succ u2) (succ u3)}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{max (succ u2) (succ u3), max (succ u2) (succ u3)} a b] => self.0) (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (HasLiftT.mk.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (CoeTCₓ.coe.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (coeBase.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u1, u1, u2, u3} R R M N (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))))) e')))
but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {N : Type.{u3}} [_inst_8 : AddCommGroup.{u3} N] [_inst_9 : Module.{u2, u3} R N (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8)] (f : LinearMap.{u2, u2, u3, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_3) (e : LinearEquiv.{u2, u2, u1, u3} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (e' : LinearEquiv.{u2, u2, u1, u3} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9), Associated.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (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)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (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)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, 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))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) (MonoidWithZero.toMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (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)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (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)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, 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))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (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)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (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)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, 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))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (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)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (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)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, 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))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (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)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (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)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, 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))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) _inst_1)))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3)))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (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)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (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)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, 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))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3)))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (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)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (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)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, 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))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e')))
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {N : Type.{u3}} [_inst_8 : AddCommGroup.{u3} N] [_inst_9 : Module.{u2, u3} R N (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8)] (f : LinearMap.{u2, u2, u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_3) (e : LinearEquiv.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (e' : LinearEquiv.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9), Associated.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) (MonoidWithZero.toMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) (CommSemiring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) _inst_1)))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e')))
Case conversion may be inaccurate. Consider using '#align linear_map.associated_det_comp_equiv LinearMap.associated_det_comp_equivₓ'. -/
theorem LinearMap.associated_det_comp_equiv {N : Type _} [AddCommGroup N] [Module R N]
(f : N →ₗ[R] M) (e e' : M ≃ₗ[R] N) : Associated (f ∘ₗ ↑e).det (f ∘ₗ ↑e').det :=
@@ -836,7 +836,7 @@ def Basis.det : AlternatingMap R M R ι
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (v : ι -> M), Eq.{succ u1} R (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v) (Matrix.det.{u1, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (Basis.toMatrix.{u3, u3, u1, u2} ι ι R M (CommRing.toCommSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 e v))
but is expected to have type
- forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] (e : Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (v : ι -> M), Eq.{succ u3} R (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u1), succ u3} (AlternatingMap.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (Basis.det.{u3, u2, u1} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v) (Matrix.det.{u3, u1} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (Basis.toMatrix.{u1, u1, u3, u2} ι ι R M (CommRing.toCommSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 e v))
+ forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] (e : Basis.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (v : ι -> M), Eq.{succ u3} R (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u1), succ u3} (AlternatingMap.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (Basis.det.{u3, u2, u1} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v) (Matrix.det.{u3, u1} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (Basis.toMatrix.{u1, u1, u3, u2} ι ι R M (CommRing.toCommSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 e v))
Case conversion may be inaccurate. Consider using '#align basis.det_apply Basis.det_applyₓ'. -/
theorem Basis.det_apply (v : ι → M) : e.det v = det (e.toMatrix v) :=
rfl
@@ -846,7 +846,7 @@ theorem Basis.det_apply (v : ι → M) : e.det v = det (e.toMatrix v) :=
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3), Eq.{succ u1} R (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (fun (_x : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u1) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) e)) (OfNat.ofNat.{u1} R 1 (OfNat.mk.{u1} R 1 (One.one.{u1} R (AddMonoidWithOne.toOne.{u1} R (AddGroupWithOne.toAddMonoidWithOne.{u1} R (AddCommGroupWithOne.toAddGroupWithOne.{u1} R (Ring.toAddCommGroupWithOne.{u1} R (CommRing.toRing.{u1} R _inst_1))))))))
but is expected to have type
- forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] (e : Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3), Eq.{succ u3} R (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u1), succ u3} (AlternatingMap.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (Basis.det.{u3, u2, u1} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) e)) (OfNat.ofNat.{u3} R 1 (One.toOfNat1.{u3} R (NonAssocRing.toOne.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1)))))
+ forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] (e : Basis.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3), Eq.{succ u3} R (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u1), succ u3} (AlternatingMap.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (Basis.det.{u3, u2, u1} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) e)) (OfNat.ofNat.{u3} R 1 (One.toOfNat1.{u3} R (Semiring.toOne.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))
Case conversion may be inaccurate. Consider using '#align basis.det_self Basis.det_selfₓ'. -/
theorem Basis.det_self : e.det e = 1 := by simp [e.det_apply]
#align basis.det_self Basis.det_self
@@ -855,7 +855,7 @@ theorem Basis.det_self : e.det e = 1 := by simp [e.det_apply]
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) [_inst_8 : IsEmpty.{succ u3} ι], Eq.{max (succ u2) (succ u1) (succ u3)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (AlternatingMap.constOfIsEmpty.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι _inst_8 (OfNat.ofNat.{u1} R 1 (OfNat.mk.{u1} R 1 (One.one.{u1} R (AddMonoidWithOne.toOne.{u1} R (AddGroupWithOne.toAddMonoidWithOne.{u1} R (AddCommGroupWithOne.toAddGroupWithOne.{u1} R (Ring.toAddCommGroupWithOne.{u1} R (CommRing.toRing.{u1} R _inst_1)))))))))
but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) [_inst_8 : IsEmpty.{succ u3} ι], Eq.{max (max (succ u2) (succ u1)) (succ u3)} (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (AlternatingMap.constOfIsEmpty.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι _inst_8 (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (NonAssocRing.toOne.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))))
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) [_inst_8 : IsEmpty.{succ u3} ι], Eq.{max (max (succ u2) (succ u1)) (succ u3)} (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (AlternatingMap.constOfIsEmpty.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι _inst_8 (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))
Case conversion may be inaccurate. Consider using '#align basis.det_is_empty Basis.det_isEmptyₓ'. -/
@[simp]
theorem Basis.det_isEmpty [IsEmpty ι] : e.det = AlternatingMap.constOfIsEmpty R M 1 :=
@@ -868,7 +868,7 @@ theorem Basis.det_isEmpty [IsEmpty ι] : e.det = AlternatingMap.constOfIsEmpty R
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) [_inst_8 : Nontrivial.{u1} R], Ne.{max (succ u2) (succ u1) (succ u3)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (OfNat.ofNat.{max u2 u1 u3} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) 0 (OfNat.mk.{max u2 u1 u3} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) 0 (Zero.zero.{max u2 u1 u3} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (AlternatingMap.zero.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι))))
but is expected to have type
- forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] (e : Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) [_inst_8 : Nontrivial.{u3} R], Ne.{max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (Basis.det.{u3, u2, u1} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (OfNat.ofNat.{max (max u3 u2) u1} (AlternatingMap.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) 0 (Zero.toOfNat0.{max (max u3 u2) u1} (AlternatingMap.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (AlternatingMap.zero.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι)))
+ forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] (e : Basis.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) [_inst_8 : Nontrivial.{u3} R], Ne.{max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (Basis.det.{u3, u2, u1} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (OfNat.ofNat.{max (max u3 u2) u1} (AlternatingMap.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) 0 (Zero.toOfNat0.{max (max u3 u2) u1} (AlternatingMap.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (AlternatingMap.zero.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι)))
Case conversion may be inaccurate. Consider using '#align basis.det_ne_zero Basis.det_ne_zeroₓ'. -/
/-- `basis.det` is not the zero map. -/
theorem Basis.det_ne_zero [Nontrivial R] : e.det ≠ 0 := fun h => by simpa [h] using e.det_self
@@ -878,7 +878,7 @@ theorem Basis.det_ne_zero [Nontrivial R] : e.det ≠ 0 := fun h => by simpa [h]
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) {v : ι -> M}, Iff (And (LinearIndependent.{u3, u1, u2} ι R M v (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (Eq.{succ u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (Submodule.span.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 (Set.range.{u2, succ u3} M ι v)) (Top.top.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (Submodule.hasTop.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (IsUnit.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v))
but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) {v : ι -> M}, Iff (And (LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Eq.{succ u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 (Set.range.{u1, succ u3} M ι v)) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (IsUnit.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v))
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) {v : ι -> M}, Iff (And (LinearIndependent.{u3, u2, u1} ι R M v (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Eq.{succ u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Submodule.span.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 (Set.range.{u1, succ u3} M ι v)) (Top.top.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Submodule.instTopSubmodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (IsUnit.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v))
Case conversion may be inaccurate. Consider using '#align is_basis_iff_det is_basis_iff_detₓ'. -/
theorem is_basis_iff_det {v : ι → M} :
LinearIndependent R v ∧ span R (Set.range v) = ⊤ ↔ IsUnit (e.det v) :=
@@ -904,7 +904,7 @@ theorem is_basis_iff_det {v : ι → M} :
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (e' : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3), IsUnit.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (fun (_x : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u1) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) e'))
but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (e' : Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3), IsUnit.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) e'))
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (e' : Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3), IsUnit.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) e'))
Case conversion may be inaccurate. Consider using '#align basis.is_unit_det Basis.isUnit_detₓ'. -/
theorem Basis.isUnit_det (e' : Basis ι R M) : IsUnit (e.det e') :=
(is_basis_iff_det e).mp ⟨e'.LinearIndependent, e'.span_eq⟩
@@ -914,7 +914,7 @@ theorem Basis.isUnit_det (e' : Basis ι R M) : IsUnit (e.det e') :=
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (f : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι), Eq.{max (succ u2) (succ u1) (succ u3)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) f (SMul.smul.{u1, max u2 u1 u3} R (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (AlternatingMap.smul.{u1, u2, u1, u3, u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Module.toDistribMulAction.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (smulCommClass_self.{u1, u1} R R (CommRing.toCommMonoid.{u1} R _inst_1) (Monoid.toMulAction.{u1} R (CommMonoid.toMonoid.{u1} R (CommRing.toCommMonoid.{u1} R _inst_1))))) (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) f (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (fun (_x : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u1) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) e)) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e))
but is expected to have type
- forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] (e : Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (f : AlternatingMap.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι), Eq.{max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) f (HSMul.hSMul.{u3, max (max u3 u2) u1, max (max u3 u2) u1} R (AlternatingMap.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (AlternatingMap.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (instHSMul.{u3, max (max u3 u2) u1} R (AlternatingMap.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (AlternatingMap.smul.{u3, u2, u3, u1, u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (Module.toDistribMulAction.{u3, u3} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (smulCommClass_self.{u3, u3} R R (CommRing.toCommMonoid.{u3} R _inst_1) (MulActionWithZero.toMulAction.{u3, u3} R R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{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 u1), max (succ u2) (succ u1), succ u3} (AlternatingMap.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) e)) (Basis.det.{u3, u2, u1} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e))
+ forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] (e : Basis.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (f : AlternatingMap.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι), Eq.{max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) f (HSMul.hSMul.{u3, max (max u3 u2) u1, max (max u3 u2) u1} R (AlternatingMap.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (AlternatingMap.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (instHSMul.{u3, max (max u3 u2) u1} R (AlternatingMap.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (AlternatingMap.smul.{u3, u2, u3, u1, u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (Module.toDistribMulAction.{u3, u3} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (smulCommClass_self.{u3, u3} R R (CommRing.toCommMonoid.{u3} R _inst_1) (MulActionWithZero.toMulAction.{u3, u3} R R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{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 u1), max (succ u2) (succ u1), succ u3} (AlternatingMap.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) e)) (Basis.det.{u3, u2, u1} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e))
Case conversion may be inaccurate. Consider using '#align alternating_map.eq_smul_basis_det AlternatingMap.eq_smul_basis_detₓ'. -/
/-- Any alternating map to `R` where `ι` has the cardinality of a basis equals the determinant
map with respect to that basis, multiplied by the value of that alternating map on that basis. -/
@@ -930,7 +930,7 @@ theorem AlternatingMap.eq_smul_basis_det (f : AlternatingMap R M R ι) : f = f e
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_8 : Finite.{succ u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (f : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι), Iff (Eq.{succ u1} R (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) f (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (fun (_x : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u1) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) e)) (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 (CommRing.toRing.{u1} R _inst_1)))))))))) (Eq.{max (succ u2) (succ u1) (succ u3)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) f (OfNat.ofNat.{max u2 u1 u3} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) 0 (OfNat.mk.{max u2 u1 u3} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) 0 (Zero.zero.{max u2 u1 u3} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (AlternatingMap.zero.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι)))))
but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_8 : Finite.{succ u3} ι] (e : Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (f : AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι), Iff (Eq.{succ u2} R (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) f (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) e)) (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Eq.{max (max (succ u2) (succ u1)) (succ u3)} (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) f (OfNat.ofNat.{max (max u2 u1) u3} (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) 0 (Zero.toOfNat0.{max (max u2 u1) u3} (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (AlternatingMap.zero.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι))))
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_8 : Finite.{succ u3} ι] (e : Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (f : AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι), Iff (Eq.{succ u2} R (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) f (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) e)) (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Eq.{max (max (succ u2) (succ u1)) (succ u3)} (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) f (OfNat.ofNat.{max (max u2 u1) u3} (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) 0 (Zero.toOfNat0.{max (max u2 u1) u3} (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (AlternatingMap.zero.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι))))
Case conversion may be inaccurate. Consider using '#align alternating_map.map_basis_eq_zero_iff AlternatingMap.map_basis_eq_zero_iffₓ'. -/
@[simp]
theorem AlternatingMap.map_basis_eq_zero_iff {ι : Type _} [Finite ι] (e : Basis ι R M)
@@ -945,7 +945,7 @@ theorem AlternatingMap.map_basis_eq_zero_iff {ι : Type _} [Finite ι] (e : Basi
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_8 : Finite.{succ u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (f : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι), Iff (Ne.{succ u1} R (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) f (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (fun (_x : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u1) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) e)) (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 (CommRing.toRing.{u1} R _inst_1)))))))))) (Ne.{max (succ u2) (succ u1) (succ u3)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) f (OfNat.ofNat.{max u2 u1 u3} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) 0 (OfNat.mk.{max u2 u1 u3} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) 0 (Zero.zero.{max u2 u1 u3} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (AlternatingMap.zero.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι)))))
but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_8 : Finite.{succ u3} ι] (e : Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (f : AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι), Iff (Ne.{succ u2} R (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) f (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) e)) (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Ne.{max (max (succ u2) (succ u1)) (succ u3)} (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) f (OfNat.ofNat.{max (max u2 u1) u3} (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) 0 (Zero.toOfNat0.{max (max u2 u1) u3} (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (AlternatingMap.zero.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι))))
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_8 : Finite.{succ u3} ι] (e : Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (f : AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι), Iff (Ne.{succ u2} R (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) f (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) e)) (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Ne.{max (max (succ u2) (succ u1)) (succ u3)} (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) f (OfNat.ofNat.{max (max u2 u1) u3} (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) 0 (Zero.toOfNat0.{max (max u2 u1) u3} (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (AlternatingMap.zero.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι))))
Case conversion may be inaccurate. Consider using '#align alternating_map.map_basis_ne_zero_iff AlternatingMap.map_basis_ne_zero_iffₓ'. -/
theorem AlternatingMap.map_basis_ne_zero_iff {ι : Type _} [Finite ι] (e : Basis ι R M)
(f : AlternatingMap R M R ι) : f e ≠ 0 ↔ f ≠ 0 :=
@@ -958,7 +958,7 @@ variable {A : Type _} [CommRing A] [Module A M]
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u3}} [_inst_8 : CommRing.{u3} A] [_inst_9 : Module.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (e : Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (v : ι -> M), Eq.{succ u3} A (coeFn.{max (succ u1) (succ u3) (succ u2), max (max (succ u2) (succ u1)) (succ u3)} (AlternatingMap.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) (fun (_x : AlternatingMap.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) => (ι -> M) -> A) (AlternatingMap.coeFun.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) (Basis.det.{u3, u1, u2} A _inst_8 M _inst_2 _inst_9 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (Function.comp.{succ u2, succ u1, succ u1} ι M M (coeFn.{succ u1, succ u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => M -> M) (LinearMap.hasCoeToFun.{u3, u3, u1, u1} A A M M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))))) f) v)) (HMul.hMul.{u3, u3, u3} A A A (instHMul.{u3} A (Distrib.toHasMul.{u3} A (Ring.toDistrib.{u3} A (CommRing.toRing.{u3} A _inst_8)))) (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.det.{u1, u3} M _inst_2 A _inst_8 _inst_9) f) (coeFn.{max (succ u1) (succ u3) (succ u2), max (max (succ u2) (succ u1)) (succ u3)} (AlternatingMap.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) (fun (_x : AlternatingMap.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) => (ι -> M) -> A) (AlternatingMap.coeFun.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) (Basis.det.{u3, u1, u2} A _inst_8 M _inst_2 _inst_9 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (e : Basis.{u3, u2, u1} ι A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (v : ι -> M), Eq.{succ u2} A (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) ι) (ι -> M) (fun (_x : ι -> M) => A) (AlternatingMap.funLike.{u2, u1, u2, u3} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) ι) (Basis.det.{u2, u1, u3} A _inst_8 M _inst_2 _inst_9 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (Function.comp.{succ u3, succ u1, succ u1} ι M M (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) f) v)) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) A ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (NonUnitalNonAssocRing.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (NonAssocRing.toNonUnitalNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) _inst_8))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) ι) (ι -> M) (fun (_x : ι -> M) => A) (AlternatingMap.funLike.{u2, u1, u2, u3} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) ι) (Basis.det.{u2, u1, u3} A _inst_8 M _inst_2 _inst_9 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (e : Basis.{u3, u2, u1} ι A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (v : ι -> M), Eq.{succ u2} A (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) ι) (ι -> M) (fun (_x : ι -> M) => A) (AlternatingMap.funLike.{u2, u1, u2, u3} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) ι) (Basis.det.{u2, u1, u3} A _inst_8 M _inst_2 _inst_9 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (Function.comp.{succ u3, succ u1, succ u1} ι M M (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) f) v)) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) A ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (NonUnitalNonAssocRing.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (NonAssocRing.toNonUnitalNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) _inst_8))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Semiring.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.semiring.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) ι) (ι -> M) (fun (_x : ι -> M) => A) (AlternatingMap.funLike.{u2, u1, u2, u3} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) ι) (Basis.det.{u2, u1, u3} A _inst_8 M _inst_2 _inst_9 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v))
Case conversion may be inaccurate. Consider using '#align basis.det_comp Basis.det_compₓ'. -/
@[simp]
theorem Basis.det_comp (e : Basis ι A M) (f : M →ₗ[A] M) (v : ι → M) :
@@ -972,7 +972,7 @@ theorem Basis.det_comp (e : Basis ι A M) (f : M →ₗ[A] M) (v : ι → M) :
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {M' : Type.{u2}} [_inst_4 : AddCommGroup.{u2} M'] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u4}} [_inst_8 : CommRing.{u4} A] [_inst_9 : Module.{u4, u1} A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_10 : Module.{u4, u2} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4)] (b : Basis.{u3, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (b' : Basis.{u3, u4, u2} ι A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10) (f : LinearMap.{u4, u4, u1, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_9 _inst_10), Eq.{succ u4} A (coeFn.{max (succ u2) (succ u4) (succ u3), max (max (succ u3) (succ u2)) (succ u4)} (AlternatingMap.{u4, u2, u4, u3} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 A (AddCommGroup.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toAddCommGroup.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) ι) (fun (_x : AlternatingMap.{u4, u2, u4, u3} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 A (AddCommGroup.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toAddCommGroup.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) ι) => (ι -> M') -> A) (AlternatingMap.coeFun.{u4, u2, u4, u3} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 A (AddCommGroup.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toAddCommGroup.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) ι) (Basis.det.{u4, u2, u3} A _inst_8 M' _inst_4 _inst_10 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b') (Function.comp.{succ u3, succ u1, succ u2} ι M M' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (LinearMap.{u4, u4, u1, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_9 _inst_10) (fun (_x : LinearMap.{u4, u4, u1, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_9 _inst_10) => M -> M') (LinearMap.hasCoeToFun.{u4, u4, u1, u2} A A M M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_9 _inst_10 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))))) f) (coeFn.{max (succ u3) (succ u4) (succ u1), max (succ u3) (succ u1)} (Basis.{u3, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (fun (_x : Basis.{u3, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u4) (succ u1), succ u3, succ u1} (Basis.{u3, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) b))) (coeFn.{max (succ u4) (succ u2), max (succ u2) (succ u4)} (MonoidHom.{u2, u4} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Module.End.ring.{u4, u2} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) _inst_4 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))))) (fun (_x : MonoidHom.{u2, u4} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Module.End.ring.{u4, u2} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) _inst_4 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))))) => (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) -> A) (MonoidHom.hasCoeToFun.{u2, u4} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Module.End.ring.{u4, u2} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) _inst_4 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))))) (LinearMap.det.{u2, u4} M' _inst_4 A _inst_8 _inst_10) (LinearMap.comp.{u4, u4, u4, u2, u1, u2} A A A M' M M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_9 _inst_10 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomCompTriple.ids.{u4, u4} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))))) f ((fun (a : Sort.{max (succ u2) (succ u1)}) (b : Sort.{max (succ u2) (succ u1)}) [self : HasLiftT.{max (succ u2) (succ u1), max (succ u2) (succ u1)} a b] => self.0) (LinearEquiv.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (LinearMap.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (HasLiftT.mk.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (LinearMap.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (CoeTCₓ.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (LinearMap.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (coeBase.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (LinearMap.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u4, u4, u2, u1} A A M' M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))))))) (Basis.equiv.{u3, u3, u4, u2, u1} ι ι A M' M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 b' b (Equiv.refl.{succ u3} ι)))))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u4}} [_inst_8 : CommRing.{u4} A] [_inst_9 : Module.{u4, u1} A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_10 : Module.{u4, u3} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] (b : Basis.{u2, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (b' : Basis.{u2, u4, u3} ι A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10) (f : LinearMap.{u4, u4, u1, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_9 _inst_10), Eq.{succ u4} A (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u2), max (succ u3) (succ u2), succ u4} (AlternatingMap.{u4, u3, u4, u2} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) ι) (ι -> M') (fun (_x : ι -> M') => A) (AlternatingMap.funLike.{u4, u3, u4, u2} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) ι) (Basis.det.{u4, u3, u2} A _inst_8 M' _inst_4 _inst_10 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b') (Function.comp.{succ u2, succ u1, succ u3} ι M M' (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (LinearMap.{u4, u4, u1, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_9 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u4, u4, u1, u3} A A M M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_9 _inst_10 (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) f) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), succ u2, succ u1} (Basis.{u2, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) b))) (FunLike.coe.{max (succ u4) (succ u3), succ u3, succ u4} (MonoidHom.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Ring.toNonAssocRing.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.ring.{u4, u3} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) _inst_4 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))))) (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (fun (_x : LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) => A) _x) (MulHomClass.toFunLike.{max u4 u3, u3, u4} (MonoidHom.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Ring.toNonAssocRing.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.ring.{u4, u3} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) _inst_4 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))))) (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulOneClass.toMul.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Ring.toNonAssocRing.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.ring.{u4, u3} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) _inst_4 _inst_10)))))) (MulOneClass.toMul.{u4} A (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u4 u3, u3, u4} (MonoidHom.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Ring.toNonAssocRing.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.ring.{u4, u3} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) _inst_4 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))))) (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Ring.toNonAssocRing.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.ring.{u4, u3} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) _inst_4 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Ring.toNonAssocRing.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.ring.{u4, u3} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) _inst_4 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))))))) (LinearMap.det.{u3, u4} M' _inst_4 A _inst_8 _inst_10) (LinearMap.comp.{u4, u4, u4, u3, u1, u3} A A A M' M M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_9 _inst_10 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomCompTriple.ids.{u4, u4} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))))) f (LinearEquiv.toLinearMap.{u4, u4, u3, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9 (Basis.equiv.{u2, u2, u4, u3, u1} ι ι A M' M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 b' b (Equiv.refl.{succ u2} ι)))))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u4}} [_inst_8 : CommRing.{u4} A] [_inst_9 : Module.{u4, u1} A M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_10 : Module.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] (b : Basis.{u2, u4, u1} ι A M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (b' : Basis.{u2, u4, u3} ι A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10) (f : LinearMap.{u4, u4, u1, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_9 _inst_10), Eq.{succ u4} A (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u2), max (succ u3) (succ u2), succ u4} (AlternatingMap.{u4, u3, u4, u2} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))) ι) (ι -> M') (fun (_x : ι -> M') => A) (AlternatingMap.funLike.{u4, u3, u4, u2} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))) ι) (Basis.det.{u4, u3, u2} A _inst_8 M' _inst_4 _inst_10 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b') (Function.comp.{succ u2, succ u1, succ u3} ι M M' (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (LinearMap.{u4, u4, u1, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_9 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u4, u4, u1, u3} A A M M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_9 _inst_10 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))))) f) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), succ u2, succ u1} (Basis.{u2, u4, u1} ι A M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u4, u1} ι A M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) b))) (FunLike.coe.{max (succ u4) (succ u3), succ u3, succ u4} (MonoidHom.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))) (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (fun (_x : LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) => A) _x) (MulHomClass.toFunLike.{max u4 u3, u3, u4} (MonoidHom.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))) (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulOneClass.toMul.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10))))) (MulOneClass.toMul.{u4} A (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u4 u3, u3, u4} (MonoidHom.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))) (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Semiring.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.semiring.{u4, u3} A M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10)))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))))))) (LinearMap.det.{u3, u4} M' _inst_4 A _inst_8 _inst_10) (LinearMap.comp.{u4, u4, u4, u3, u1, u3} A A A M' M M' (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_9 _inst_10 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHomCompTriple.ids.{u4, u4} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))))) f (LinearEquiv.toLinearMap.{u4, u4, u3, u1} A A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9 (Basis.equiv.{u2, u2, u4, u3, u1} ι ι A M' M (CommSemiring.toSemiring.{u4} A (CommRing.toCommSemiring.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 b' b (Equiv.refl.{succ u2} ι)))))
Case conversion may be inaccurate. Consider using '#align basis.det_comp_basis Basis.det_comp_basisₓ'. -/
@[simp]
theorem Basis.det_comp_basis [Module A M'] (b : Basis ι A M) (b' : Basis ι A M') (f : M →ₗ[A] M') :
@@ -988,7 +988,7 @@ theorem Basis.det_comp_basis [Module A M'] (b : Basis ι A M) (b' : Basis ι A M
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {ι' : Type.{u4}} [_inst_10 : Fintype.{u4} ι'] [_inst_11 : DecidableEq.{succ u4} ι'] (b : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (v : ι' -> M) (e : Equiv.{succ u3, succ u4} ι ι'), Eq.{succ u1} R (coeFn.{max (succ u2) (succ u1) (succ u4), max (max (succ u4) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι') (fun (_x : AlternatingMap.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι') => (ι' -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι') (Basis.det.{u1, u2, u4} R _inst_1 M _inst_2 _inst_3 ι' (fun (a : ι') (b : ι') => _inst_11 a b) _inst_10 (Basis.reindex.{u3, u4, u1, u2} ι ι' R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 b e)) v) (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) (Function.comp.{succ u3, succ u4, succ u2} ι ι' M v (coeFn.{max 1 (max (succ u3) (succ u4)) (succ u4) (succ u3), max (succ u3) (succ u4)} (Equiv.{succ u3, succ u4} ι ι') (fun (_x : Equiv.{succ u3, succ u4} ι ι') => ι -> ι') (Equiv.hasCoeToFun.{succ u3, succ u4} ι ι') e)))
but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {ι' : Type.{u4}} [_inst_10 : Fintype.{u4} ι'] [_inst_11 : DecidableEq.{succ u4} ι'] (b : Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (v : ι' -> M) (e : Equiv.{succ u3, succ u4} ι ι'), Eq.{succ u2} R (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), max (succ u1) (succ u4), succ u2} (AlternatingMap.{u2, u1, u2, u4} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι') (ι' -> M) (fun (_x : ι' -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u4} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι') (Basis.det.{u2, u1, u4} R _inst_1 M _inst_2 _inst_3 ι' (fun (a : ι') (b : ι') => _inst_11 a b) _inst_10 (Basis.reindex.{u3, u4, u2, u1} ι ι' R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 b e)) v) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) (Function.comp.{succ u3, succ u4, succ u1} ι ι' M v (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} (Equiv.{succ u3, succ u4} ι ι') ι (fun (_x : ι) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : ι) => ι') _x) (Equiv.instFunLikeEquiv.{succ u3, succ u4} ι ι') e)))
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {ι' : Type.{u4}} [_inst_10 : Fintype.{u4} ι'] [_inst_11 : DecidableEq.{succ u4} ι'] (b : Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (v : ι' -> M) (e : Equiv.{succ u3, succ u4} ι ι'), Eq.{succ u2} R (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), max (succ u1) (succ u4), succ u2} (AlternatingMap.{u2, u1, u2, u4} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι') (ι' -> M) (fun (_x : ι' -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u4} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι') (Basis.det.{u2, u1, u4} R _inst_1 M _inst_2 _inst_3 ι' (fun (a : ι') (b : ι') => _inst_11 a b) _inst_10 (Basis.reindex.{u3, u4, u2, u1} ι ι' R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 b e)) v) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) (Function.comp.{succ u3, succ u4, succ u1} ι ι' M v (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} (Equiv.{succ u3, succ u4} ι ι') ι (fun (_x : ι) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : ι) => ι') _x) (Equiv.instFunLikeEquiv.{succ u3, succ u4} ι ι') e)))
Case conversion may be inaccurate. Consider using '#align basis.det_reindex Basis.det_reindexₓ'. -/
theorem Basis.det_reindex {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (b : Basis ι R M) (v : ι' → M)
(e : ι ≃ ι') : (b.reindex e).det v = b.det (v ∘ e) := by
@@ -999,7 +999,7 @@ theorem Basis.det_reindex {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (b : Ba
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {ι' : Type.{u4}} [_inst_10 : Fintype.{u4} ι'] [_inst_11 : DecidableEq.{succ u4} ι'] (b : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (v : ι -> M) (e : Equiv.{succ u4, succ u3} ι' ι), Eq.{succ u1} R (coeFn.{max (succ u2) (succ u1) (succ u4), max (max (succ u4) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι') (fun (_x : AlternatingMap.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι') => (ι' -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι') (Basis.det.{u1, u2, u4} R _inst_1 M _inst_2 _inst_3 ι' (fun (a : ι') (b : ι') => _inst_11 a b) _inst_10 (Basis.reindex.{u3, u4, u1, u2} ι ι' R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 b (Equiv.symm.{succ u4, succ u3} ι' ι e))) (Function.comp.{succ u4, succ u3, succ u2} ι' ι M v (coeFn.{max 1 (max (succ u4) (succ u3)) (succ u3) (succ u4), max (succ u4) (succ u3)} (Equiv.{succ u4, succ u3} ι' ι) (fun (_x : Equiv.{succ u4, succ u3} ι' ι) => ι' -> ι) (Equiv.hasCoeToFun.{succ u4, succ u3} ι' ι) e))) (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) v)
but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {ι' : Type.{u4}} [_inst_10 : Fintype.{u4} ι'] [_inst_11 : DecidableEq.{succ u4} ι'] (b : Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (v : ι -> M) (e : Equiv.{succ u4, succ u3} ι' ι), Eq.{succ u2} R (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), max (succ u1) (succ u4), succ u2} (AlternatingMap.{u2, u1, u2, u4} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι') (ι' -> M) (fun (_x : ι' -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u4} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι') (Basis.det.{u2, u1, u4} R _inst_1 M _inst_2 _inst_3 ι' (fun (a : ι') (b : ι') => _inst_11 a b) _inst_10 (Basis.reindex.{u3, u4, u2, u1} ι ι' R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 b (Equiv.symm.{succ u4, succ u3} ι' ι e))) (Function.comp.{succ u4, succ u3, succ u1} ι' ι M v (FunLike.coe.{max (succ u3) (succ u4), succ u4, succ u3} (Equiv.{succ u4, succ u3} ι' ι) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : ι') => ι) _x) (Equiv.instFunLikeEquiv.{succ u4, succ u3} ι' ι) e))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) v)
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {ι' : Type.{u4}} [_inst_10 : Fintype.{u4} ι'] [_inst_11 : DecidableEq.{succ u4} ι'] (b : Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (v : ι -> M) (e : Equiv.{succ u4, succ u3} ι' ι), Eq.{succ u2} R (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), max (succ u1) (succ u4), succ u2} (AlternatingMap.{u2, u1, u2, u4} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι') (ι' -> M) (fun (_x : ι' -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u4} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι') (Basis.det.{u2, u1, u4} R _inst_1 M _inst_2 _inst_3 ι' (fun (a : ι') (b : ι') => _inst_11 a b) _inst_10 (Basis.reindex.{u3, u4, u2, u1} ι ι' R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 b (Equiv.symm.{succ u4, succ u3} ι' ι e))) (Function.comp.{succ u4, succ u3, succ u1} ι' ι M v (FunLike.coe.{max (succ u3) (succ u4), succ u4, succ u3} (Equiv.{succ u4, succ u3} ι' ι) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : ι') => ι) _x) (Equiv.instFunLikeEquiv.{succ u4, succ u3} ι' ι) e))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) v)
Case conversion may be inaccurate. Consider using '#align basis.det_reindex_symm Basis.det_reindex_symmₓ'. -/
theorem Basis.det_reindex_symm {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (b : Basis ι R M)
(v : ι → M) (e : ι' ≃ ι) : (b.reindex e.symm).det (v ∘ e) = b.det v := by
@@ -1010,7 +1010,7 @@ theorem Basis.det_reindex_symm {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (b
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] [_inst_5 : Module.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] {ι : Type.{u4}} [_inst_6 : DecidableEq.{succ u4} ι] [_inst_7 : Fintype.{u4} ι] (b : Basis.{u4, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (f : LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (v : ι -> M'), Eq.{succ u1} R (coeFn.{max (succ u3) (succ u1) (succ u4), max (max (succ u4) (succ u3)) (succ u1)} (AlternatingMap.{u1, u3, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u3, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M') -> R) (AlternatingMap.coeFun.{u1, u3, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u3, u4} R _inst_1 M' _inst_4 _inst_5 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 (Basis.map.{u4, u1, u2, u3} ι R M M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 b f)) v) (coeFn.{max (succ u2) (succ u1) (succ u4), max (max (succ u4) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u4} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) (Function.comp.{succ u4, succ u3, succ u2} ι M' M (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearEquiv.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (fun (_x : LinearEquiv.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) => M' -> M) (LinearEquiv.hasCoeToFun.{u1, u1, u3, u2} R R M' M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.symm.{u1, u1, u2, u3} R R M M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) f)) v))
but is expected to have type
- forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u1}} [_inst_4 : AddCommGroup.{u1} M'] [_inst_5 : Module.{u3, u1} R M' (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4)] {ι : Type.{u4}} [_inst_6 : DecidableEq.{succ u4} ι] [_inst_7 : Fintype.{u4} ι] (b : Basis.{u4, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (f : LinearEquiv.{u3, u3, u2, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5) (v : ι -> M'), Eq.{succ u3} R (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u4), max (succ u1) (succ u4), succ u3} (AlternatingMap.{u3, u1, u3, u4} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (ι -> M') (fun (_x : ι -> M') => R) (AlternatingMap.funLike.{u3, u1, u3, u4} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (Basis.det.{u3, u1, u4} R _inst_1 M' _inst_4 _inst_5 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 (Basis.map.{u4, u3, u2, u1} ι R M M' (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 b f)) v) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u4), succ u3} (AlternatingMap.{u3, u2, u3, u4} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u3, u2, u3, u4} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (Basis.det.{u3, u2, u4} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) (Function.comp.{succ u4, succ u1, succ u2} ι M' M (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearEquiv.{u3, u3, u1, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _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 u1, u3, u1, u2} (LinearEquiv.{u3, u3, u1, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) R M' M (SMulZeroClass.toSMul.{u3, u1} R M' (AddMonoid.toZero.{u1} M' (AddCommMonoid.toAddMonoid.{u1} M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4))) (DistribSMul.toSMulZeroClass.{u3, u1} R M' (AddMonoid.toAddZeroClass.{u1} M' (AddCommMonoid.toAddMonoid.{u1} M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4))) (DistribMulAction.toDistribSMul.{u3, u1} R M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4)) (Module.toDistribMulAction.{u3, u1} R M' (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Module.toDistribMulAction.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u3, u1, u2} (LinearEquiv.{u3, u3, u1, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) R M' M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4)) (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Module.toDistribMulAction.{u3, u1} R M' (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5) (Module.toDistribMulAction.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, u1, u2, max u2 u1} R M' M (LinearEquiv.{u3, u3, u1, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u1, u2, max u2 u1} R R M' M (LinearEquiv.{u3, u3, u1, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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, u1, u2} R R M' M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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.symm.{u3, u3, u2, u1} R R M M' (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) f)) v))
+ forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u1}} [_inst_4 : AddCommGroup.{u1} M'] [_inst_5 : Module.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4)] {ι : Type.{u4}} [_inst_6 : DecidableEq.{succ u4} ι] [_inst_7 : Fintype.{u4} ι] (b : Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (f : LinearEquiv.{u3, u3, u2, u1} 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))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5) (v : ι -> M'), Eq.{succ u3} R (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u4), max (succ u1) (succ u4), succ u3} (AlternatingMap.{u3, u1, u3, u4} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (ι -> M') (fun (_x : ι -> M') => R) (AlternatingMap.funLike.{u3, u1, u3, u4} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (Basis.det.{u3, u1, u4} R _inst_1 M' _inst_4 _inst_5 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 (Basis.map.{u4, u3, u2, u1} ι R M M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 b f)) v) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u4), succ u3} (AlternatingMap.{u3, u2, u3, u4} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u3, u2, u3, u4} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (Basis.det.{u3, u2, u4} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) (Function.comp.{succ u4, succ u1, succ u2} ι M' M (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearEquiv.{u3, u3, u1, 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))) M' M (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _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 u1, u3, u1, u2} (LinearEquiv.{u3, u3, u1, 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))) M' M (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) R M' M (SMulZeroClass.toSMul.{u3, u1} R M' (AddMonoid.toZero.{u1} M' (AddCommMonoid.toAddMonoid.{u1} M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4))) (DistribSMul.toSMulZeroClass.{u3, u1} R M' (AddMonoid.toAddZeroClass.{u1} M' (AddCommMonoid.toAddMonoid.{u1} M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4))) (DistribMulAction.toDistribSMul.{u3, u1} R M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4)) (Module.toDistribMulAction.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u3, u1, u2} (LinearEquiv.{u3, u3, u1, 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))) M' M (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) R M' M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4)) (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Module.toDistribMulAction.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5) (Module.toDistribMulAction.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, u1, u2, max u2 u1} R M' M (LinearEquiv.{u3, u3, u1, 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))) M' M (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u1, u2, max u2 u1} R R M' M (LinearEquiv.{u3, u3, u1, 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))) M' M (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 (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, u1, u2} R R M' M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 (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.symm.{u3, u3, u2, u1} R R M M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5 (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))) f)) v))
Case conversion may be inaccurate. Consider using '#align basis.det_map Basis.det_mapₓ'. -/
@[simp]
theorem Basis.det_map (b : Basis ι R M) (f : M ≃ₗ[R] M') (v : ι → M') :
@@ -1022,7 +1022,7 @@ theorem Basis.det_map (b : Basis ι R M) (f : M ≃ₗ[R] M') (v : ι → M') :
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] [_inst_5 : Module.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] {ι : Type.{u4}} [_inst_6 : DecidableEq.{succ u4} ι] [_inst_7 : Fintype.{u4} ι] (b : Basis.{u4, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (f : LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5), Eq.{max (succ u3) (succ u1) (succ u4)} (AlternatingMap.{u1, u3, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u3, u4} R _inst_1 M' _inst_4 _inst_5 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 (Basis.map.{u4, u1, u2, u3} ι R M M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 b f)) (AlternatingMap.compLinearMap.{u1, u2, u1, u4, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 (Basis.det.{u1, u2, u4} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) ((fun (a : Sort.{max (succ u3) (succ u2)}) (b : Sort.{max (succ u3) (succ u2)}) [self : HasLiftT.{max (succ u3) (succ u2), max (succ u3) (succ u2)} a b] => self.0) (LinearEquiv.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (LinearMap.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (HasLiftT.mk.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearEquiv.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (LinearMap.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (CoeTCₓ.coe.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearEquiv.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (LinearMap.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (coeBase.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearEquiv.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (LinearMap.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (LinearEquiv.LinearMap.hasCoe.{u1, u1, u3, u2} R R M' M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))))) (LinearEquiv.symm.{u1, u1, u2, u3} R R M M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) f)))
but is expected to have type
- forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u1}} [_inst_4 : AddCommGroup.{u1} M'] [_inst_5 : Module.{u3, u1} R M' (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4)] {ι : Type.{u4}} [_inst_6 : DecidableEq.{succ u4} ι] [_inst_7 : Fintype.{u4} ι] (b : Basis.{u4, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (f : LinearEquiv.{u3, u3, u2, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5), Eq.{max (max (succ u3) (succ u1)) (succ u4)} (AlternatingMap.{u3, u1, u3, u4} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (Basis.det.{u3, u1, u4} R _inst_1 M' _inst_4 _inst_5 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 (Basis.map.{u4, u3, u2, u1} ι R M M' (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 b f)) (AlternatingMap.compLinearMap.{u3, u2, u3, u4, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 (Basis.det.{u3, u2, u4} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) (LinearEquiv.toLinearMap.{u3, u3, u1, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 (LinearEquiv.symm.{u3, u3, u2, u1} R R M M' (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) f)))
+ forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u1}} [_inst_4 : AddCommGroup.{u1} M'] [_inst_5 : Module.{u3, u1} R M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4)] {ι : Type.{u4}} [_inst_6 : DecidableEq.{succ u4} ι] [_inst_7 : Fintype.{u4} ι] (b : Basis.{u4, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (f : LinearEquiv.{u3, u3, u2, u1} 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))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5), Eq.{max (max (succ u3) (succ u1)) (succ u4)} (AlternatingMap.{u3, u1, u3, u4} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (Basis.det.{u3, u1, u4} R _inst_1 M' _inst_4 _inst_5 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 (Basis.map.{u4, u3, u2, u1} ι R M M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 b f)) (AlternatingMap.compLinearMap.{u3, u2, u3, u4, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 (Basis.det.{u3, u2, u4} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) (LinearEquiv.toLinearMap.{u3, u3, u1, 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))) M' M (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 (LinearEquiv.symm.{u3, u3, u2, u1} R R M M' (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5 (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))) f)))
Case conversion may be inaccurate. Consider using '#align basis.det_map' Basis.det_map'ₓ'. -/
theorem Basis.det_map' (b : Basis ι R M) (f : M ≃ₗ[R] M') :
(b.map f).det = b.det.compLinearMap f.symm :=
@@ -1033,7 +1033,7 @@ theorem Basis.det_map' (b : Basis ι R M) (f : M ≃ₗ[R] M') :
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι], Eq.{max (succ (max u2 u1)) (succ u1) (succ u2)} (AlternatingMap.{u1, max u2 u1, u1, u2} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (j : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, max u2 u1, u2} R _inst_1 (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (j : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Pi.Function.module.{u2, u1, u1} ι R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 (Pi.basisFun.{u1, u2} R ι (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_7)) (Matrix.detRowAlternating.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1)
but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι], Eq.{max (succ u2) (succ u1)} (AlternatingMap.{u2, max u2 u1, u2, u1} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u1, u2} ι (fun (j : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (Pi.module.{u1, u2, u2} ι (fun (x._@.Mathlib.LinearAlgebra.StdBasis._hyg.3573 : ι) => R) R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (Basis.det.{u2, max u2 u1, u1} R _inst_1 (ι -> R) (Pi.addCommGroup.{u1, u2} ι (fun (j : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u2} R (CommRing.toRing.{u2} R _inst_1))) (Pi.module.{u1, u2, u2} ι (fun (x._@.Mathlib.LinearAlgebra.StdBasis._hyg.3573 : ι) => R) R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 (Pi.basisFun.{u2, u1} R ι (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_7)) (Matrix.detRowAlternating.{u2, u1} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1)
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι], Eq.{max (succ u2) (succ u1)} (AlternatingMap.{u2, max u2 u1, u2, u1} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u1, u2} ι (fun (j : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (Pi.module.{u1, u2, u2} ι (fun (x._@.Mathlib.LinearAlgebra.StdBasis._hyg.3573 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (Basis.det.{u2, max u2 u1, u1} R _inst_1 (ι -> R) (Pi.addCommGroup.{u1, u2} ι (fun (j : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u2} R (CommRing.toRing.{u2} R _inst_1))) (Pi.module.{u1, u2, u2} ι (fun (x._@.Mathlib.LinearAlgebra.StdBasis._hyg.3573 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 (Pi.basisFun.{u2, u1} R ι (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_7)) (Matrix.detRowAlternating.{u2, u1} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1)
Case conversion may be inaccurate. Consider using '#align pi.basis_fun_det Pi.basisFun_detₓ'. -/
@[simp]
theorem Pi.basisFun_det : (Pi.basisFun R ι).det = Matrix.detRowAlternating :=
@@ -1046,7 +1046,7 @@ theorem Pi.basisFun_det : (Pi.basisFun R ι).det = Matrix.detRowAlternating :=
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) {v : ι -> M} (hli : LinearIndependent.{u3, u1, u2} ι R M v (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (hsp : LE.le.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (Preorder.toLE.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (CompleteSemilatticeInf.toPartialOrder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (Submodule.completeLattice.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3))))) (Top.top.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (Submodule.hasTop.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) (Submodule.span.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 (Set.range.{u2, succ u3} M ι v))) (i : ι), Eq.{succ (max u2 u1)} (LinearMap.{u1, u1, u2, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M R (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) _inst_3 (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (SMul.smul.{u1, max u2 u1} R (LinearMap.{u1, u1, u2, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M R (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) _inst_3 (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearMap.hasSmul.{u1, u1, u1, u2, u1} R R R M R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) _inst_3 (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Module.toDistribMulAction.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (smulCommClass_self.{u1, u1} R R (CommRing.toCommMonoid.{u1} R _inst_1) (Monoid.toMulAction.{u1} R (CommMonoid.toMonoid.{u1} R (CommRing.toCommMonoid.{u1} R _inst_1))))) (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v) (Basis.coord.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 (Basis.mk.{u3, u1, u2} ι R M v (CommRing.toRing.{u1} R _inst_1) _inst_2 _inst_3 hli hsp) i)) (MultilinearMap.toLinearMap.{u1, u2, u1, u3} R ι (fun (i : ι) => M) R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (fun (i : ι) => _inst_3) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (AlternatingMap.toMultilinearMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e)) (fun (a : ι) (b : ι) => _inst_6 a b) v i)
but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) {v : ι -> M} (hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 (Set.range.{u1, succ u3} M ι v))) (i : ι), Eq.{max (succ u2) (succ u1)} (LinearMap.{u2, u2, 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)))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _inst_3 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (HSMul.hSMul.{u2, max u2 u1, max u2 u1} R (LinearMap.{u2, u2, 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)))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _inst_3 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (LinearMap.{u2, u2, 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)))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _inst_3 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (instHSMul.{u2, max u2 u1} R (LinearMap.{u2, u2, 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)))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _inst_3 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (LinearMap.instSMulLinearMap.{u2, u2, u2, u1, u2} R R R M R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _inst_3 (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)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (Module.toDistribMulAction.{u2, u2} R R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (smulCommClass_self.{u2, u2} R R (CommRing.toCommMonoid.{u2} R _inst_1) (MulActionWithZero.toMulAction.{u2, u2} R R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v) (Basis.coord.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 (Basis.mk.{u3, u2, u1} ι R M v (CommRing.toRing.{u2} R _inst_1) _inst_2 _inst_3 hli hsp) i)) (MultilinearMap.toLinearMap.{u2, u1, u2, u3} R ι (fun (i : ι) => M) R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (fun (i : ι) => _inst_3) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (AlternatingMap.toMultilinearMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e)) (fun (a : ι) (b : ι) => _inst_6 a b) v i)
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) {v : ι -> M} (hli : LinearIndependent.{u3, u2, u1} ι R M v (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (hsp : LE.le.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Submodule.completeLattice.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (Top.top.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Submodule.instTopSubmodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (Submodule.span.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 (Set.range.{u1, succ u3} M ι v))) (i : ι), Eq.{max (succ u2) (succ u1)} (LinearMap.{u2, u2, 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)))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _inst_3 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (HSMul.hSMul.{u2, max u2 u1, max u2 u1} R (LinearMap.{u2, u2, 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)))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _inst_3 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (LinearMap.{u2, u2, 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)))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _inst_3 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (instHSMul.{u2, max u2 u1} R (LinearMap.{u2, u2, 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)))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _inst_3 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (LinearMap.instSMulLinearMap.{u2, u2, u2, u1, u2} R R R M R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _inst_3 (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)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (Module.toDistribMulAction.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (smulCommClass_self.{u2, u2} R R (CommRing.toCommMonoid.{u2} R _inst_1) (MulActionWithZero.toMulAction.{u2, u2} R R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v) (Basis.coord.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 (Basis.mk.{u3, u2, u1} ι R M v (CommRing.toRing.{u2} R _inst_1) _inst_2 _inst_3 hli hsp) i)) (MultilinearMap.toLinearMap.{u2, u1, u2, u3} R ι (fun (i : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (fun (i : ι) => _inst_3) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AlternatingMap.toMultilinearMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e)) (fun (a : ι) (b : ι) => _inst_6 a b) v i)
Case conversion may be inaccurate. Consider using '#align basis.det_smul_mk_coord_eq_det_update Basis.det_smul_mk_coord_eq_det_updateₓ'. -/
/-- If we fix a background basis `e`, then for any other basis `v`, we can characterise the
coordinates provided by `v` in terms of determinants relative to `e`. -/
@@ -1069,7 +1069,7 @@ theorem Basis.det_smul_mk_coord_eq_det_update {v : ι → M} (hli : LinearIndepe
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (w : ι -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))), Eq.{max (succ u2) (succ u1) (succ u3)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 (Basis.unitsSMul.{u3, u1, u2} ι R M (CommRing.toRing.{u1} R _inst_1) _inst_2 _inst_3 e w)) (SMul.smul.{u1, max u2 u1 u3} R (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (AlternatingMap.smul.{u1, u2, u1, u3, u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Module.toDistribMulAction.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (smulCommClass_self.{u1, u1} R R (CommRing.toCommMonoid.{u1} R _inst_1) (Monoid.toMulAction.{u1} R (CommMonoid.toMonoid.{u1} R (CommRing.toCommMonoid.{u1} R _inst_1))))) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (HasLiftT.mk.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (CoeTCₓ.coe.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (coeBase.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (Units.hasCoe.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Inv.inv.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Units.hasInv.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Finset.prod.{u1, u3} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι (CommGroup.toCommMonoid.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Units.instCommGroupUnitsToMonoid.{u1} R (CommRing.toCommMonoid.{u1} R _inst_1))) (Finset.univ.{u3} ι _inst_7) (fun (i : ι) => w i)))) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e))
but is expected to have type
- forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (w : ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))), Eq.{max (max (succ u2) (succ u1)) (succ u3)} (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 (Basis.unitsSMul.{u3, u2, u1} ι R M (CommRing.toRing.{u2} R _inst_1) _inst_2 _inst_3 e w)) (HSMul.hSMul.{u2, max (max u2 u1) u3, max (max u2 u1) u3} R (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (instHSMul.{u2, max (max u2 u1) u3} R (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (AlternatingMap.smul.{u2, u1, u2, u3, u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (Module.toDistribMulAction.{u2, u2} R R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (smulCommClass_self.{u2, u2} R R (CommRing.toCommMonoid.{u2} R _inst_1) (MulActionWithZero.toMulAction.{u2, u2} R R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (Units.val.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (Inv.inv.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Units.instInv.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Finset.prod.{u2, u3} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) ι (CommGroup.toCommMonoid.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Units.instCommGroupUnitsToMonoid.{u2} R (CommRing.toCommMonoid.{u2} R _inst_1))) (Finset.univ.{u3} ι _inst_7) (fun (i : ι) => w i)))) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e))
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u2, u1} ι R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (w : ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))), Eq.{max (max (succ u2) (succ u1)) (succ u3)} (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 (Basis.unitsSMul.{u3, u2, u1} ι R M (CommRing.toRing.{u2} R _inst_1) _inst_2 _inst_3 e w)) (HSMul.hSMul.{u2, max (max u2 u1) u3, max (max u2 u1) u3} R (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (instHSMul.{u2, max (max u2 u1) u3} R (AlternatingMap.{u2, u1, u2, u3} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι) (AlternatingMap.smul.{u2, u1, u2, u3, u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) ι R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (Module.toDistribMulAction.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (smulCommClass_self.{u2, u2} R R (CommRing.toCommMonoid.{u2} R _inst_1) (MulActionWithZero.toMulAction.{u2, u2} R R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (Units.val.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (Inv.inv.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instInv.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Finset.prod.{u2, u3} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) ι (CommGroup.toCommMonoid.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Units.instCommGroupUnitsToMonoid.{u2} R (CommRing.toCommMonoid.{u2} R _inst_1))) (Finset.univ.{u3} ι _inst_7) (fun (i : ι) => w i)))) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e))
Case conversion may be inaccurate. Consider using '#align basis.det_units_smul Basis.det_unitsSMulₓ'. -/
/-- If a basis is multiplied columnwise by scalars `w : ι → Rˣ`, then the determinant with respect
to this basis is multiplied by the product of the inverse of these scalars. -/
@@ -1089,7 +1089,7 @@ theorem Basis.det_unitsSMul (e : Basis ι R M) (w : ι → Rˣ) :
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (w : ι -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))), Eq.{succ u1} R (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (fun (_x : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u1) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) (Basis.unitsSMul.{u3, u1, u2} ι R M (CommRing.toRing.{u1} R _inst_1) _inst_2 _inst_3 e w))) (Finset.prod.{u1, u3} R ι (CommRing.toCommMonoid.{u1} R _inst_1) (Finset.univ.{u3} ι _inst_7) (fun (i : ι) => (fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (HasLiftT.mk.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (CoeTCₓ.coe.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (coeBase.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (Units.hasCoe.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (w i)))
but is expected to have type
- forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] (e : Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (w : ι -> (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))), Eq.{succ u3} R (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u1), succ u3} (AlternatingMap.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (Basis.det.{u3, u2, u1} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (Basis.unitsSMul.{u1, u3, u2} ι R M (CommRing.toRing.{u3} R _inst_1) _inst_2 _inst_3 e w))) (Finset.prod.{u3, u1} R ι (CommRing.toCommMonoid.{u3} R _inst_1) (Finset.univ.{u1} ι _inst_7) (fun (i : ι) => Units.val.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (w i)))
+ forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] (e : Basis.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (w : ι -> (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))))), Eq.{succ u3} R (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u1), succ u3} (AlternatingMap.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (Basis.det.{u3, u2, u1} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (Basis.unitsSMul.{u1, u3, u2} ι R M (CommRing.toRing.{u3} R _inst_1) _inst_2 _inst_3 e w))) (Finset.prod.{u3, u1} R ι (CommRing.toCommMonoid.{u3} R _inst_1) (Finset.univ.{u1} ι _inst_7) (fun (i : ι) => Units.val.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (w i)))
Case conversion may be inaccurate. Consider using '#align basis.det_units_smul_self Basis.det_unitsSMul_selfₓ'. -/
/-- The determinant of a basis constructed by `units_smul` is the product of the given units. -/
@[simp]
@@ -1101,7 +1101,7 @@ theorem Basis.det_unitsSMul_self (w : ι → Rˣ) : e.det (e.units_smul w) = ∏
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) {w : ι -> R} (hw : forall (i : ι), IsUnit.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (w i)), Eq.{succ u1} R (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (fun (_x : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u1) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) (Basis.isUnitSMul.{u3, u1, u2} ι R M (CommRing.toRing.{u1} R _inst_1) _inst_2 _inst_3 e (fun (i : ι) => w i) hw))) (Finset.prod.{u1, u3} R ι (CommRing.toCommMonoid.{u1} R _inst_1) (Finset.univ.{u3} ι _inst_7) (fun (i : ι) => w i))
but is expected to have type
- forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] (e : Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) {w : ι -> R} (hw : forall (i : ι), IsUnit.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (w i)), Eq.{succ u3} R (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u1), succ u3} (AlternatingMap.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (Basis.det.{u3, u2, u1} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (Basis.isUnitSMul.{u1, u3, u2} ι R M (CommRing.toRing.{u3} R _inst_1) _inst_2 _inst_3 e (fun (i : ι) => w i) hw))) (Finset.prod.{u3, u1} R ι (CommRing.toCommMonoid.{u3} R _inst_1) (Finset.univ.{u1} ι _inst_7) (fun (i : ι) => w i))
+ forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] (e : Basis.{u1, u3, u2} ι R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) {w : ι -> R} (hw : forall (i : ι), IsUnit.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)))) (w i)), Eq.{succ u3} R (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u1), succ u3} (AlternatingMap.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u3, u2, u3, u1} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) ι) (Basis.det.{u3, u2, u1} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (Basis.isUnitSMul.{u1, u3, u2} ι R M (CommRing.toRing.{u3} R _inst_1) _inst_2 _inst_3 e (fun (i : ι) => w i) hw))) (Finset.prod.{u3, u1} R ι (CommRing.toCommMonoid.{u3} R _inst_1) (Finset.univ.{u1} ι _inst_7) (fun (i : ι) => w i))
Case conversion may be inaccurate. Consider using '#align basis.det_is_unit_smul Basis.det_isUnitSMulₓ'. -/
/-- The determinant of a basis constructed by `is_unit_smul` is the product of the given units. -/
@[simp]
mathlib commit https://github.com/leanprover-community/mathlib/commit/738054fa93d43512da144ec45ce799d18fd44248
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: Johannes Hölzl, Patrick Massot, Casper Putz, Anne Baanen
! This file was ported from Lean 3 source module linear_algebra.determinant
-! leanprover-community/mathlib commit b1c23399f01266afe392a0d8f71f599a0dad4f7b
+! leanprover-community/mathlib commit fe8d0ff42c3c24d789f491dc2622b6cac3d61564
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
@@ -18,6 +18,9 @@ import Mathbin.LinearAlgebra.Matrix.Basis
/-!
# Determinant of families of vectors
+> THIS FILE IS SYNCHRONIZED WITH MATHLIB4.
+> Any changes to this file require a corresponding PR to mathlib4.
+
This file defines the determinant of an endomorphism, and of a family of vectors
with respect to some basis. For the determinant of a matrix, see the file
`linear_algebra.matrix.determinant`.
mathlib commit https://github.com/leanprover-community/mathlib/commit/36b8aa61ea7c05727161f96a0532897bd72aedab
@@ -313,7 +313,7 @@ theorem det_toMatrix (b : Basis ι A M) (f : M →ₗ[A] M) : Matrix.det (toMatr
lean 3 declaration is
forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {ι : Type.{u2}} [_inst_11 : Fintype.{u2} ι] [_inst_12 : DecidableEq.{succ u2} ι] (f : LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))), Eq.{succ u1} A (Matrix.det.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_12 a b) _inst_11 A _inst_8 (coeFn.{succ (max u2 u1), succ (max u2 u1)} (LinearEquiv.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_1.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.toMatrix'._proof_2.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_3.{u1, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι)) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (_x : LinearEquiv.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_1.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.toMatrix'._proof_2.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_3.{u1, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι)) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) -> (Matrix.{u2, u2, u1} ι ι A)) (LinearEquiv.hasCoeToFun.{u1, u1, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_3.{u1, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι)) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_1.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.toMatrix'._proof_2.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.toMatrix'.{u1, u2, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι ι _inst_11 (fun (a : ι) (b : ι) => _inst_12 a b)) f)) (coeFn.{max (succ u1) (succ (max u2 u1)), max (succ (max u2 u1)) (succ u1)} (MonoidHom.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u2 u1} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (fun (_x : MonoidHom.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u2 u1} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) => (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) -> A) (MonoidHom.hasCoeToFun.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u2 u1} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.det.{max u2 u1, u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A _inst_8 (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) f)
but is expected to have type
- forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {ι : Type.{u2}} [_inst_11 : Fintype.{u2} ι] [_inst_12 : DecidableEq.{succ u2} ι] (f : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))), Eq.{succ u1} A (Matrix.det.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_12 a b) _inst_11 A _inst_8 (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (_x : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => Matrix.{u2, u2, u1} ι ι A) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (SMulZeroClass.toSMul.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddMonoid.toZero.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddMonoid.toAddZeroClass.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Module.toDistribMulAction.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, max u2 u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.toMatrix'.{u1, u2, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι ι _inst_11 (fun (a : ι) (b : ι) => _inst_12 a b)) f)) (FunLike.coe.{max (succ u1) (succ (max u1 u2)), succ (max u1 u2), succ u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u1 u2} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (_x : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) => A) _x) (MulHomClass.toFunLike.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u1 u2} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulOneClass.toMul.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u1 u2} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))))))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u1 u2} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u1 u2} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u1 u2} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))))) (LinearMap.det.{max u1 u2, u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) A _inst_8 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) f)
+ forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {ι : Type.{u2}} [_inst_11 : Fintype.{u2} ι] [_inst_12 : DecidableEq.{succ u2} ι] (f : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))), Eq.{succ u1} A (Matrix.det.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_12 a b) _inst_11 A _inst_8 (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (_x : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => Matrix.{u2, u2, u1} ι ι A) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (SMulZeroClass.toSMul.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddMonoid.toZero.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddMonoid.toAddZeroClass.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Module.toDistribMulAction.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, max u2 u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1976 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1979 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.toMatrix'.{u1, u2, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι ι _inst_11 (fun (a : ι) (b : ι) => _inst_12 a b)) f)) (FunLike.coe.{max (succ u1) (succ (max u1 u2)), succ (max u1 u2), succ u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u1 u2} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (_x : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) => A) _x) (MulHomClass.toFunLike.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u1 u2} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulOneClass.toMul.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u1 u2} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))))))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u1 u2} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u1 u2} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u1 u2} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))))) (LinearMap.det.{max u1 u2, u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) A _inst_8 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) f)
Case conversion may be inaccurate. Consider using '#align linear_map.det_to_matrix' LinearMap.det_toMatrix'ₓ'. -/
@[simp]
theorem det_toMatrix' {ι : Type _} [Fintype ι] [DecidableEq ι] (f : (ι → A) →ₗ[A] ι → A) :
@@ -336,7 +336,7 @@ theorem det_toLin (b : Basis ι R M) (f : Matrix ι ι R) :
lean 3 declaration is
forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] (f : Matrix.{u2, u2, u1} ι ι R), Eq.{succ u1} R (coeFn.{max (succ u1) (succ (max u2 u1)), max (succ (max u2 u1)) (succ u1)} (MonoidHom.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u2 u1} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u2 u1} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) -> R) (MonoidHom.hasCoeToFun.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u2 u1} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{max u2 u1, u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) R _inst_1 (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (coeFn.{succ (max u2 u1), succ (max u2 u1)} (LinearEquiv.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.toLin'._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_3.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι))) (fun (_x : LinearEquiv.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.toLin'._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_3.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι))) => (Matrix.{u2, u2, u1} ι ι R) -> (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u1, u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_3.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.toLin'._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.toLin'.{u1, u2, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b)) f)) (Matrix.det.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 f)
but is expected to have type
- forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] (f : Matrix.{u2, u2, u1} ι ι R), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => R) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (Matrix.{u2, u2, u1} ι ι R) (fun (a : Matrix.{u2, u2, u1} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Matrix.{u2, u2, u1} ι ι R) => LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) a) (SMulHomClass.toFunLike.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toZero.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, max u2 u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (Matrix.toLin'.{u1, u2, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b)) f)) (FunLike.coe.{max (succ u1) (succ (max u1 u2)), succ (max u1 u2), succ u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u1 u2} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (_x : LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => R) _x) (MulHomClass.toFunLike.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u1 u2} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulOneClass.toMul.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u1 u2} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))))) (MulOneClass.toMul.{u1} R (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u1 u2} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u1 u2} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (MonoidHom.monoidHomClass.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u1 u2} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))))) (LinearMap.det.{max u1 u2, u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1))) R _inst_1 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (Matrix.{u2, u2, u1} ι ι R) (fun (_x : Matrix.{u2, u2, u1} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Matrix.{u2, u2, u1} ι ι R) => LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toZero.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, max u2 u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (Matrix.toLin'.{u1, u2, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b)) f)) (Matrix.det.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 f)
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] (f : Matrix.{u2, u2, u1} ι ι R), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => R) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (Matrix.{u2, u2, u1} ι ι R) (fun (a : Matrix.{u2, u2, u1} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Matrix.{u2, u2, u1} ι ι R) => LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) a) (SMulHomClass.toFunLike.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toZero.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, max u2 u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (Matrix.toLin'.{u1, u2, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b)) f)) (FunLike.coe.{max (succ u1) (succ (max u1 u2)), succ (max u1 u2), succ u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u1 u2} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (_x : LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => R) _x) (MulHomClass.toFunLike.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u1 u2} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulOneClass.toMul.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u1 u2} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))))) (MulOneClass.toMul.{u1} R (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u1 u2} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u1 u2} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (MonoidHom.monoidHomClass.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u1 u2} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))))) (LinearMap.det.{max u1 u2, u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1))) R _inst_1 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (Matrix.{u2, u2, u1} ι ι R) (fun (_x : Matrix.{u2, u2, u1} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Matrix.{u2, u2, u1} ι ι R) => LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toZero.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, max u2 u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2099 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2102 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (Matrix.toLin'.{u1, u2, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b)) f)) (Matrix.det.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 f)
Case conversion may be inaccurate. Consider using '#align linear_map.det_to_lin' LinearMap.det_toLin'ₓ'. -/
@[simp]
theorem det_toLin' (f : Matrix ι ι R) : LinearMap.det f.toLin' = f.det := by
mathlib commit https://github.com/leanprover-community/mathlib/commit/39478763114722f0ec7613cb2f3f7701f9b86c8d
@@ -73,24 +73,48 @@ variable {A : Type _} [CommRing A]
variable {m n : Type _} [Fintype m] [Fintype n]
+/- warning: equiv_of_pi_lequiv_pi -> equivOfPiLEquivPi is a dubious translation:
+lean 3 declaration is
+ forall {m : Type.{u_6}} {n : Type.{u_7}} [_inst_9 : Fintype.{u_6} m] [_inst_10 : Fintype.{u_7} n] {R : Type.{u_1}} [_inst_11 : CommRing.{u_1} R] [_inst_12 : Nontrivial.{u_1} R], (LinearEquiv.{u_1, u_1, max u_6 u_1, max u_7 u_1} R R (Ring.toSemiring.{u_1} R (CommRing.toRing.{u_1} R _inst_11)) (Ring.toSemiring.{u_1} R (CommRing.toRing.{u_1} R _inst_11)) (RingHom.id.{u_1} R (Semiring.toNonAssocSemiring.{u_1} R (Ring.toSemiring.{u_1} R (CommRing.toRing.{u_1} R _inst_11)))) (RingHom.id.{u_1} R (Semiring.toNonAssocSemiring.{u_1} R (Ring.toSemiring.{u_1} R (CommRing.toRing.{u_1} R _inst_11)))) (equivOfPiLEquivPi._proof_1.{u_1} R _inst_11) (equivOfPiLEquivPi._proof_2.{u_1} R _inst_11) (m -> R) (n -> R) (Pi.addCommMonoid.{u_6, u_1} m (fun (ᾰ : m) => R) (fun (i : m) => AddCommGroup.toAddCommMonoid.{u_1} R (NonUnitalNonAssocRing.toAddCommGroup.{u_1} R (NonAssocRing.toNonUnitalNonAssocRing.{u_1} R (Ring.toNonAssocRing.{u_1} R (CommRing.toRing.{u_1} R _inst_11)))))) (Pi.addCommMonoid.{u_7, u_1} n (fun (ᾰ : n) => R) (fun (i : n) => AddCommGroup.toAddCommMonoid.{u_1} R (NonUnitalNonAssocRing.toAddCommGroup.{u_1} R (NonAssocRing.toNonUnitalNonAssocRing.{u_1} R (Ring.toNonAssocRing.{u_1} R (CommRing.toRing.{u_1} R _inst_11)))))) (Pi.Function.module.{u_6, u_1, u_1} m R R (Ring.toSemiring.{u_1} R (CommRing.toRing.{u_1} R _inst_11)) (AddCommGroup.toAddCommMonoid.{u_1} R (NonUnitalNonAssocRing.toAddCommGroup.{u_1} R (NonAssocRing.toNonUnitalNonAssocRing.{u_1} R (Ring.toNonAssocRing.{u_1} R (CommRing.toRing.{u_1} R _inst_11))))) (Semiring.toModule.{u_1} R (Ring.toSemiring.{u_1} R (CommRing.toRing.{u_1} R _inst_11)))) (Pi.Function.module.{u_7, u_1, u_1} n R R (Ring.toSemiring.{u_1} R (CommRing.toRing.{u_1} R _inst_11)) (AddCommGroup.toAddCommMonoid.{u_1} R (NonUnitalNonAssocRing.toAddCommGroup.{u_1} R (NonAssocRing.toNonUnitalNonAssocRing.{u_1} R (Ring.toNonAssocRing.{u_1} R (CommRing.toRing.{u_1} R _inst_11))))) (Semiring.toModule.{u_1} R (Ring.toSemiring.{u_1} R (CommRing.toRing.{u_1} R _inst_11))))) -> (Equiv.{succ u_6, succ u_7} m n)
+but is expected to have type
+ forall {m : Type.{u_1}} {n : Type.{u_2}} [_inst_9 : Fintype.{u_1} m] [_inst_10 : Fintype.{u_2} n] {R : Type.{u_3}} [_inst_11 : CommRing.{u_3} R] [_inst_12 : Nontrivial.{u_3} R], (LinearEquiv.{u_3, u_3, max u_1 u_3, max u_2 u_3} R R (Ring.toSemiring.{u_3} R (CommRing.toRing.{u_3} R _inst_11)) (Ring.toSemiring.{u_3} R (CommRing.toRing.{u_3} R _inst_11)) (RingHom.id.{u_3} R (NonAssocRing.toNonAssocSemiring.{u_3} R (Ring.toNonAssocRing.{u_3} R (CommRing.toRing.{u_3} R _inst_11)))) (RingHom.id.{u_3} R (Semiring.toNonAssocSemiring.{u_3} R (Ring.toSemiring.{u_3} R (CommRing.toRing.{u_3} R _inst_11)))) (RingHomInvPair.ids.{u_3} R (Ring.toSemiring.{u_3} R (CommRing.toRing.{u_3} R _inst_11))) (RingHomInvPair.ids.{u_3} R (Ring.toSemiring.{u_3} R (CommRing.toRing.{u_3} R _inst_11))) (m -> R) (n -> R) (Pi.addCommMonoid.{u_1, u_3} m (fun (ᾰ : m) => R) (fun (i : m) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u_3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_3} R (NonAssocRing.toNonUnitalNonAssocRing.{u_3} R (Ring.toNonAssocRing.{u_3} R (CommRing.toRing.{u_3} R _inst_11)))))) (Pi.addCommMonoid.{u_2, u_3} n (fun (ᾰ : n) => R) (fun (i : n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u_3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_3} R (NonAssocRing.toNonUnitalNonAssocRing.{u_3} R (Ring.toNonAssocRing.{u_3} R (CommRing.toRing.{u_3} R _inst_11)))))) (Pi.module.{u_1, u_3, u_3} m (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.269 : m) => R) R (Ring.toSemiring.{u_3} R (CommRing.toRing.{u_3} R _inst_11)) (fun (i : m) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u_3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_3} R (NonAssocRing.toNonUnitalNonAssocRing.{u_3} R (Ring.toNonAssocRing.{u_3} R (CommRing.toRing.{u_3} R _inst_11))))) (fun (i : m) => Semiring.toModule.{u_3} R (Ring.toSemiring.{u_3} R (CommRing.toRing.{u_3} R _inst_11)))) (Pi.module.{u_2, u_3, u_3} n (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.272 : n) => R) R (Ring.toSemiring.{u_3} R (CommRing.toRing.{u_3} R _inst_11)) (fun (i : n) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u_3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_3} R (NonAssocRing.toNonUnitalNonAssocRing.{u_3} R (Ring.toNonAssocRing.{u_3} R (CommRing.toRing.{u_3} R _inst_11))))) (fun (i : n) => Semiring.toModule.{u_3} R (Ring.toSemiring.{u_3} R (CommRing.toRing.{u_3} R _inst_11))))) -> (Equiv.{succ u_1, succ u_2} m n)
+Case conversion may be inaccurate. Consider using '#align equiv_of_pi_lequiv_pi equivOfPiLEquivPiₓ'. -/
/-- If `R^m` and `R^n` are linearly equivalent, then `m` and `n` are also equivalent. -/
-def equivOfPiLequivPi {R : Type _} [CommRing R] [Nontrivial R] (e : (m → R) ≃ₗ[R] n → R) : m ≃ n :=
+def equivOfPiLEquivPi {R : Type _} [CommRing R] [Nontrivial R] (e : (m → R) ≃ₗ[R] n → R) : m ≃ n :=
Basis.indexEquiv (Basis.ofEquivFun e.symm) (Pi.basisFun _ _)
-#align equiv_of_pi_lequiv_pi equivOfPiLequivPi
+#align equiv_of_pi_lequiv_pi equivOfPiLEquivPi
namespace Matrix
+/- warning: matrix.index_equiv_of_inv -> Matrix.indexEquivOfInv is a dubious translation:
+lean 3 declaration is
+ forall {A : Type.{u_5}} [_inst_8 : CommRing.{u_5} A] {m : Type.{u_6}} {n : Type.{u_7}} [_inst_9 : Fintype.{u_6} m] [_inst_10 : Fintype.{u_7} n] [_inst_11 : Nontrivial.{u_5} A] [_inst_12 : DecidableEq.{succ u_6} m] [_inst_13 : DecidableEq.{succ u_7} n] {M : Matrix.{u_6, u_7, u_5} m n A} {M' : Matrix.{u_7, u_6, u_5} n m A}, (Eq.{succ (max u_6 u_5)} (Matrix.{u_6, u_6, u_5} m m A) (Matrix.mul.{u_5, u_6, u_7, u_6} m n m A _inst_10 (Distrib.toHasMul.{u_5} A (Ring.toDistrib.{u_5} A (CommRing.toRing.{u_5} A _inst_8))) (AddCommGroup.toAddCommMonoid.{u_5} A (NonUnitalNonAssocRing.toAddCommGroup.{u_5} A (NonAssocRing.toNonUnitalNonAssocRing.{u_5} A (Ring.toNonAssocRing.{u_5} A (CommRing.toRing.{u_5} A _inst_8))))) M M') (OfNat.ofNat.{max u_6 u_5} (Matrix.{u_6, u_6, u_5} m m A) 1 (OfNat.mk.{max u_6 u_5} (Matrix.{u_6, u_6, u_5} m m A) 1 (One.one.{max u_6 u_5} (Matrix.{u_6, u_6, u_5} m m A) (Matrix.hasOne.{u_5, u_6} m A (fun (a : m) (b : m) => _inst_12 a b) (MulZeroClass.toHasZero.{u_5} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u_5} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_5} A (NonAssocRing.toNonUnitalNonAssocRing.{u_5} A (Ring.toNonAssocRing.{u_5} A (CommRing.toRing.{u_5} A _inst_8)))))) (AddMonoidWithOne.toOne.{u_5} A (AddGroupWithOne.toAddMonoidWithOne.{u_5} A (AddCommGroupWithOne.toAddGroupWithOne.{u_5} A (Ring.toAddCommGroupWithOne.{u_5} A (CommRing.toRing.{u_5} A _inst_8)))))))))) -> (Eq.{succ (max u_7 u_5)} (Matrix.{u_7, u_7, u_5} n n A) (Matrix.mul.{u_5, u_7, u_6, u_7} n m n A _inst_9 (Distrib.toHasMul.{u_5} A (Ring.toDistrib.{u_5} A (CommRing.toRing.{u_5} A _inst_8))) (AddCommGroup.toAddCommMonoid.{u_5} A (NonUnitalNonAssocRing.toAddCommGroup.{u_5} A (NonAssocRing.toNonUnitalNonAssocRing.{u_5} A (Ring.toNonAssocRing.{u_5} A (CommRing.toRing.{u_5} A _inst_8))))) M' M) (OfNat.ofNat.{max u_7 u_5} (Matrix.{u_7, u_7, u_5} n n A) 1 (OfNat.mk.{max u_7 u_5} (Matrix.{u_7, u_7, u_5} n n A) 1 (One.one.{max u_7 u_5} (Matrix.{u_7, u_7, u_5} n n A) (Matrix.hasOne.{u_5, u_7} n A (fun (a : n) (b : n) => _inst_13 a b) (MulZeroClass.toHasZero.{u_5} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u_5} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_5} A (NonAssocRing.toNonUnitalNonAssocRing.{u_5} A (Ring.toNonAssocRing.{u_5} A (CommRing.toRing.{u_5} A _inst_8)))))) (AddMonoidWithOne.toOne.{u_5} A (AddGroupWithOne.toAddMonoidWithOne.{u_5} A (AddCommGroupWithOne.toAddGroupWithOne.{u_5} A (Ring.toAddCommGroupWithOne.{u_5} A (CommRing.toRing.{u_5} A _inst_8)))))))))) -> (Equiv.{succ u_6, succ u_7} m n)
+but is expected to have type
+ forall {A : Type.{u_1}} [_inst_8 : CommRing.{u_1} A] {m : Type.{u_2}} {n : Type.{u_3}} [_inst_9 : Fintype.{u_2} m] [_inst_10 : Fintype.{u_3} n] [_inst_11 : Nontrivial.{u_1} A] [_inst_12 : DecidableEq.{succ u_2} m] [_inst_13 : DecidableEq.{succ u_3} n] {M : Matrix.{u_2, u_3, u_1} m n A} {M' : Matrix.{u_3, u_2, u_1} n m A}, (Eq.{max (succ u_1) (succ u_2)} (Matrix.{u_2, u_2, u_1} m m A) (Matrix.mul.{u_1, u_2, u_3, u_2} m n m A _inst_10 (NonUnitalNonAssocRing.toMul.{u_1} A (NonAssocRing.toNonUnitalNonAssocRing.{u_1} A (Ring.toNonAssocRing.{u_1} A (CommRing.toRing.{u_1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u_1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_1} A (NonAssocRing.toNonUnitalNonAssocRing.{u_1} A (Ring.toNonAssocRing.{u_1} A (CommRing.toRing.{u_1} A _inst_8))))) M M') (OfNat.ofNat.{max u_1 u_2} (Matrix.{u_2, u_2, u_1} m m A) 1 (One.toOfNat1.{max u_1 u_2} (Matrix.{u_2, u_2, u_1} m m A) (Matrix.one.{u_1, u_2} m A (fun (a : m) (b : m) => _inst_12 a b) (CommMonoidWithZero.toZero.{u_1} A (CommSemiring.toCommMonoidWithZero.{u_1} A (CommRing.toCommSemiring.{u_1} A _inst_8))) (NonAssocRing.toOne.{u_1} A (Ring.toNonAssocRing.{u_1} A (CommRing.toRing.{u_1} A _inst_8))))))) -> (Eq.{max (succ u_1) (succ u_3)} (Matrix.{u_3, u_3, u_1} n n A) (Matrix.mul.{u_1, u_3, u_2, u_3} n m n A _inst_9 (NonUnitalNonAssocRing.toMul.{u_1} A (NonAssocRing.toNonUnitalNonAssocRing.{u_1} A (Ring.toNonAssocRing.{u_1} A (CommRing.toRing.{u_1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u_1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u_1} A (NonAssocRing.toNonUnitalNonAssocRing.{u_1} A (Ring.toNonAssocRing.{u_1} A (CommRing.toRing.{u_1} A _inst_8))))) M' M) (OfNat.ofNat.{max u_1 u_3} (Matrix.{u_3, u_3, u_1} n n A) 1 (One.toOfNat1.{max u_1 u_3} (Matrix.{u_3, u_3, u_1} n n A) (Matrix.one.{u_1, u_3} n A (fun (a : n) (b : n) => _inst_13 a b) (CommMonoidWithZero.toZero.{u_1} A (CommSemiring.toCommMonoidWithZero.{u_1} A (CommRing.toCommSemiring.{u_1} A _inst_8))) (NonAssocRing.toOne.{u_1} A (Ring.toNonAssocRing.{u_1} A (CommRing.toRing.{u_1} A _inst_8))))))) -> (Equiv.{succ u_2, succ u_3} m n)
+Case conversion may be inaccurate. Consider using '#align matrix.index_equiv_of_inv Matrix.indexEquivOfInvₓ'. -/
/-- If `M` and `M'` are each other's inverse matrices, they are square matrices up to
equivalence of types. -/
def indexEquivOfInv [Nontrivial A] [DecidableEq m] [DecidableEq n] {M : Matrix m n A}
{M' : Matrix n m A} (hMM' : M ⬝ M' = 1) (hM'M : M' ⬝ M = 1) : m ≃ n :=
- equivOfPiLequivPi (toLin'OfInv hMM' hM'M)
+ equivOfPiLEquivPi (toLin'OfInv hMM' hM'M)
#align matrix.index_equiv_of_inv Matrix.indexEquivOfInv
+/- warning: matrix.det_comm -> Matrix.det_comm is a dubious translation:
+lean 3 declaration is
+ forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {n : Type.{u2}} [_inst_10 : Fintype.{u2} n] [_inst_11 : DecidableEq.{succ u2} n] (M : Matrix.{u2, u2, u1} n n A) (N : Matrix.{u2, u2, u1} n n A), Eq.{succ u1} A (Matrix.det.{u1, u2} n (fun (a : n) (b : n) => _inst_11 a b) _inst_10 A _inst_8 (Matrix.mul.{u1, u2, u2, u2} n n n A _inst_10 (Distrib.toHasMul.{u1} A (Ring.toDistrib.{u1} A (CommRing.toRing.{u1} A _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M N)) (Matrix.det.{u1, u2} n (fun (a : n) (b : n) => _inst_11 a b) _inst_10 A _inst_8 (Matrix.mul.{u1, u2, u2, u2} n n n A _inst_10 (Distrib.toHasMul.{u1} A (Ring.toDistrib.{u1} A (CommRing.toRing.{u1} A _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) N M))
+but is expected to have type
+ forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {n : Type.{u2}} [_inst_10 : Fintype.{u2} n] [_inst_11 : DecidableEq.{succ u2} n] (M : Matrix.{u2, u2, u1} n n A) (N : Matrix.{u2, u2, u1} n n A), Eq.{succ u1} A (Matrix.det.{u1, u2} n (fun (a : n) (b : n) => _inst_11 a b) _inst_10 A _inst_8 (Matrix.mul.{u1, u2, u2, u2} n n n A _inst_10 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M N)) (Matrix.det.{u1, u2} n (fun (a : n) (b : n) => _inst_11 a b) _inst_10 A _inst_8 (Matrix.mul.{u1, u2, u2, u2} n n n A _inst_10 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) N M))
+Case conversion may be inaccurate. Consider using '#align matrix.det_comm Matrix.det_commₓ'. -/
theorem det_comm [DecidableEq n] (M N : Matrix n n A) : det (M ⬝ N) = det (N ⬝ M) := by
rw [det_mul, det_mul, mul_comm]
#align matrix.det_comm Matrix.det_comm
+/- warning: matrix.det_comm' -> Matrix.det_comm' is a dubious translation:
+lean 3 declaration is
+ forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {m : Type.{u2}} {n : Type.{u3}} [_inst_9 : Fintype.{u2} m] [_inst_10 : Fintype.{u3} n] [_inst_11 : DecidableEq.{succ u2} m] [_inst_12 : DecidableEq.{succ u3} n] {M : Matrix.{u3, u2, u1} n m A} {N : Matrix.{u2, u3, u1} m n A} {M' : Matrix.{u2, u3, u1} m n A}, (Eq.{succ (max u3 u1)} (Matrix.{u3, u3, u1} n n A) (Matrix.mul.{u1, u3, u2, u3} n m n A _inst_9 (Distrib.toHasMul.{u1} A (Ring.toDistrib.{u1} A (CommRing.toRing.{u1} A _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M M') (OfNat.ofNat.{max u3 u1} (Matrix.{u3, u3, u1} n n A) 1 (OfNat.mk.{max u3 u1} (Matrix.{u3, u3, u1} n n A) 1 (One.one.{max u3 u1} (Matrix.{u3, u3, u1} n n A) (Matrix.hasOne.{u1, u3} n A (fun (a : n) (b : n) => _inst_12 a b) (MulZeroClass.toHasZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddMonoidWithOne.toOne.{u1} A (AddGroupWithOne.toAddMonoidWithOne.{u1} A (AddCommGroupWithOne.toAddGroupWithOne.{u1} A (Ring.toAddCommGroupWithOne.{u1} A (CommRing.toRing.{u1} A _inst_8)))))))))) -> (Eq.{succ (max u2 u1)} (Matrix.{u2, u2, u1} m m A) (Matrix.mul.{u1, u2, u3, u2} m n m A _inst_10 (Distrib.toHasMul.{u1} A (Ring.toDistrib.{u1} A (CommRing.toRing.{u1} A _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M' M) (OfNat.ofNat.{max u2 u1} (Matrix.{u2, u2, u1} m m A) 1 (OfNat.mk.{max u2 u1} (Matrix.{u2, u2, u1} m m A) 1 (One.one.{max u2 u1} (Matrix.{u2, u2, u1} m m A) (Matrix.hasOne.{u1, u2} m A (fun (a : m) (b : m) => _inst_11 a b) (MulZeroClass.toHasZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddMonoidWithOne.toOne.{u1} A (AddGroupWithOne.toAddMonoidWithOne.{u1} A (AddCommGroupWithOne.toAddGroupWithOne.{u1} A (Ring.toAddCommGroupWithOne.{u1} A (CommRing.toRing.{u1} A _inst_8)))))))))) -> (Eq.{succ u1} A (Matrix.det.{u1, u3} n (fun (a : n) (b : n) => _inst_12 a b) _inst_10 A _inst_8 (Matrix.mul.{u1, u3, u2, u3} n m n A _inst_9 (Distrib.toHasMul.{u1} A (Ring.toDistrib.{u1} A (CommRing.toRing.{u1} A _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M N)) (Matrix.det.{u1, u2} m (fun (a : m) (b : m) => _inst_11 a b) _inst_9 A _inst_8 (Matrix.mul.{u1, u2, u3, u2} m n m A _inst_10 (Distrib.toHasMul.{u1} A (Ring.toDistrib.{u1} A (CommRing.toRing.{u1} A _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) N M)))
+but is expected to have type
+ forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {m : Type.{u3}} {n : Type.{u2}} [_inst_9 : Fintype.{u3} m] [_inst_10 : Fintype.{u2} n] [_inst_11 : DecidableEq.{succ u3} m] [_inst_12 : DecidableEq.{succ u2} n] {M : Matrix.{u2, u3, u1} n m A} {N : Matrix.{u3, u2, u1} m n A} {M' : Matrix.{u3, u2, u1} m n A}, (Eq.{max (succ u1) (succ u2)} (Matrix.{u2, u2, u1} n n A) (Matrix.mul.{u1, u2, u3, u2} n m n A _inst_9 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M M') (OfNat.ofNat.{max u1 u2} (Matrix.{u2, u2, u1} n n A) 1 (One.toOfNat1.{max u1 u2} (Matrix.{u2, u2, u1} n n A) (Matrix.one.{u1, u2} n A (fun (a : n) (b : n) => _inst_12 a b) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (NonAssocRing.toOne.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))))) -> (Eq.{max (succ u1) (succ u3)} (Matrix.{u3, u3, u1} m m A) (Matrix.mul.{u1, u3, u2, u3} m n m A _inst_10 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M' M) (OfNat.ofNat.{max u1 u3} (Matrix.{u3, u3, u1} m m A) 1 (One.toOfNat1.{max u1 u3} (Matrix.{u3, u3, u1} m m A) (Matrix.one.{u1, u3} m A (fun (a : m) (b : m) => _inst_11 a b) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (NonAssocRing.toOne.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))))) -> (Eq.{succ u1} A (Matrix.det.{u1, u2} n (fun (a : n) (b : n) => _inst_12 a b) _inst_10 A _inst_8 (Matrix.mul.{u1, u2, u3, u2} n m n A _inst_9 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M N)) (Matrix.det.{u1, u3} m (fun (a : m) (b : m) => _inst_11 a b) _inst_9 A _inst_8 (Matrix.mul.{u1, u3, u2, u3} m n m A _inst_10 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) N M)))
+Case conversion may be inaccurate. Consider using '#align matrix.det_comm' Matrix.det_comm'ₓ'. -/
/-- If there exists a two-sided inverse `M'` for `M` (indexed differently),
then `det (N ⬝ M) = det (M ⬝ N)`. -/
theorem det_comm' [DecidableEq m] [DecidableEq n] {M : Matrix n m A} {N : Matrix m n A}
@@ -104,6 +128,12 @@ theorem det_comm' [DecidableEq m] [DecidableEq n] {M : Matrix n m A} {N : Matrix
submatrix_mul_equiv, Equiv.coe_refl, submatrix_id_id]
#align matrix.det_comm' Matrix.det_comm'
+/- warning: matrix.det_conj_of_mul_eq_one -> Matrix.det_conj_of_mul_eq_one is a dubious translation:
+lean 3 declaration is
+ forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {m : Type.{u2}} {n : Type.{u3}} [_inst_9 : Fintype.{u2} m] [_inst_10 : Fintype.{u3} n] [_inst_11 : DecidableEq.{succ u2} m] [_inst_12 : DecidableEq.{succ u3} n] {M : Matrix.{u2, u3, u1} m n A} {M' : Matrix.{u3, u2, u1} n m A} {N : Matrix.{u3, u3, u1} n n A}, (Eq.{succ (max u2 u1)} (Matrix.{u2, u2, u1} m m A) (Matrix.mul.{u1, u2, u3, u2} m n m A _inst_10 (Distrib.toHasMul.{u1} A (Ring.toDistrib.{u1} A (CommRing.toRing.{u1} A _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M M') (OfNat.ofNat.{max u2 u1} (Matrix.{u2, u2, u1} m m A) 1 (OfNat.mk.{max u2 u1} (Matrix.{u2, u2, u1} m m A) 1 (One.one.{max u2 u1} (Matrix.{u2, u2, u1} m m A) (Matrix.hasOne.{u1, u2} m A (fun (a : m) (b : m) => _inst_11 a b) (MulZeroClass.toHasZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddMonoidWithOne.toOne.{u1} A (AddGroupWithOne.toAddMonoidWithOne.{u1} A (AddCommGroupWithOne.toAddGroupWithOne.{u1} A (Ring.toAddCommGroupWithOne.{u1} A (CommRing.toRing.{u1} A _inst_8)))))))))) -> (Eq.{succ (max u3 u1)} (Matrix.{u3, u3, u1} n n A) (Matrix.mul.{u1, u3, u2, u3} n m n A _inst_9 (Distrib.toHasMul.{u1} A (Ring.toDistrib.{u1} A (CommRing.toRing.{u1} A _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M' M) (OfNat.ofNat.{max u3 u1} (Matrix.{u3, u3, u1} n n A) 1 (OfNat.mk.{max u3 u1} (Matrix.{u3, u3, u1} n n A) 1 (One.one.{max u3 u1} (Matrix.{u3, u3, u1} n n A) (Matrix.hasOne.{u1, u3} n A (fun (a : n) (b : n) => _inst_12 a b) (MulZeroClass.toHasZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddMonoidWithOne.toOne.{u1} A (AddGroupWithOne.toAddMonoidWithOne.{u1} A (AddCommGroupWithOne.toAddGroupWithOne.{u1} A (Ring.toAddCommGroupWithOne.{u1} A (CommRing.toRing.{u1} A _inst_8)))))))))) -> (Eq.{succ u1} A (Matrix.det.{u1, u2} m (fun (a : m) (b : m) => _inst_11 a b) _inst_9 A _inst_8 (Matrix.mul.{u1, u2, u3, u2} m n m A _inst_10 (Distrib.toHasMul.{u1} A (Ring.toDistrib.{u1} A (CommRing.toRing.{u1} A _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Matrix.mul.{u1, u2, u3, u3} m n n A _inst_10 (Distrib.toHasMul.{u1} A (Ring.toDistrib.{u1} A (CommRing.toRing.{u1} A _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M N) M')) (Matrix.det.{u1, u3} n (fun (a : n) (b : n) => _inst_12 a b) _inst_10 A _inst_8 N))
+but is expected to have type
+ forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {m : Type.{u3}} {n : Type.{u2}} [_inst_9 : Fintype.{u3} m] [_inst_10 : Fintype.{u2} n] [_inst_11 : DecidableEq.{succ u3} m] [_inst_12 : DecidableEq.{succ u2} n] {M : Matrix.{u3, u2, u1} m n A} {M' : Matrix.{u2, u3, u1} n m A} {N : Matrix.{u2, u2, u1} n n A}, (Eq.{max (succ u1) (succ u3)} (Matrix.{u3, u3, u1} m m A) (Matrix.mul.{u1, u3, u2, u3} m n m A _inst_10 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M M') (OfNat.ofNat.{max u1 u3} (Matrix.{u3, u3, u1} m m A) 1 (One.toOfNat1.{max u1 u3} (Matrix.{u3, u3, u1} m m A) (Matrix.one.{u1, u3} m A (fun (a : m) (b : m) => _inst_11 a b) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (NonAssocRing.toOne.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))))) -> (Eq.{max (succ u1) (succ u2)} (Matrix.{u2, u2, u1} n n A) (Matrix.mul.{u1, u2, u3, u2} n m n A _inst_9 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M' M) (OfNat.ofNat.{max u1 u2} (Matrix.{u2, u2, u1} n n A) 1 (One.toOfNat1.{max u1 u2} (Matrix.{u2, u2, u1} n n A) (Matrix.one.{u1, u2} n A (fun (a : n) (b : n) => _inst_12 a b) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (NonAssocRing.toOne.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))))) -> (Eq.{succ u1} A (Matrix.det.{u1, u3} m (fun (a : m) (b : m) => _inst_11 a b) _inst_9 A _inst_8 (Matrix.mul.{u1, u3, u2, u3} m n m A _inst_10 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Matrix.mul.{u1, u3, u2, u2} m n n A _inst_10 (NonUnitalNonAssocRing.toMul.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) M N) M')) (Matrix.det.{u1, u2} n (fun (a : n) (b : n) => _inst_12 a b) _inst_10 A _inst_8 N))
+Case conversion may be inaccurate. Consider using '#align matrix.det_conj_of_mul_eq_one Matrix.det_conj_of_mul_eq_oneₓ'. -/
/-- If `M'` is a two-sided inverse for `M` (indexed differently), `det (M ⬝ N ⬝ M') = det N`.
See `matrix.det_conj` and `matrix.det_conj'` for the case when `M' = M⁻¹` or vice versa. -/
@@ -126,6 +156,12 @@ variable {A : Type _} [CommRing A] [Module A M]
variable {κ : Type _} [Fintype κ]
+/- warning: linear_map.det_to_matrix_eq_det_to_matrix -> LinearMap.det_toMatrix_eq_det_toMatrix is a dubious translation:
+lean 3 declaration is
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u3}} [_inst_8 : CommRing.{u3} A] [_inst_9 : Module.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {κ : Type.{u4}} [_inst_10 : Fintype.{u4} κ] [_inst_11 : DecidableEq.{succ u4} κ] (b : Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (c : Basis.{u4, u3, u1} κ A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u3} A (Matrix.det.{u3, u2} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (coeFn.{max (succ u1) (succ (max u2 u3)), max (succ u1) (succ (max u2 u3))} (LinearEquiv.{u3, u3, u1, max u2 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (fun (_x : LinearEquiv.{u3, u3, u1, max u2 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) => (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> (Matrix.{u2, u2, u3} ι ι A)) (LinearEquiv.hasCoeToFun.{u3, u3, u1, max u2 u3} A A (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))) (LinearMap.toMatrix.{u3, u2, u2, u1, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f)) (Matrix.det.{u3, u4} κ (fun (a : κ) (b : κ) => _inst_11 a b) _inst_10 A _inst_8 (coeFn.{max (succ u1) (succ (max u4 u3)), max (succ u1) (succ (max u4 u3))} (LinearEquiv.{u3, u3, u1, max u4 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u3} κ κ A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u4, u4, u3} κ κ A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (fun (_x : LinearEquiv.{u3, u3, u1, max u4 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u3} κ κ A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u4, u4, u3} κ κ A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) => (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> (Matrix.{u4, u4, u3} κ κ A)) (LinearEquiv.hasCoeToFun.{u3, u3, u1, max u4 u3} A A (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u3} κ κ A) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u4, u4, u3} κ κ A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))) (LinearMap.toMatrix.{u3, u4, u4, u1, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) κ κ _inst_10 _inst_10 (fun (a : κ) (b : κ) => _inst_11 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 c c) f))
+but is expected to have type
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {κ : Type.{u4}} [_inst_10 : Fintype.{u4} κ] [_inst_11 : DecidableEq.{succ u4} κ] (b : Basis.{u3, u2, u1} ι A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (c : Basis.{u4, u2, u1} κ A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} A (Matrix.det.{u2, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => Matrix.{u3, u3, u2} ι ι A) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (SMulZeroClass.toSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toZero.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toAddZeroClass.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u1 u3) u2} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u1 u3) u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u3, u3, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f)) (Matrix.det.{u2, u4} κ (fun (a : κ) (b : κ) => _inst_11 a b) _inst_10 A _inst_8 (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), succ u1, max (succ u2) (succ u4)} (LinearEquiv.{u2, u2, u1, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => Matrix.{u4, u4, u2} κ κ A) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u4, u2, u1, max u2 u4} (LinearEquiv.{u2, u2, u1, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (SMulZeroClass.toSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u2 u4} A (Matrix.{u4, u4, u2} κ κ A) (AddMonoid.toZero.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u4} A (Matrix.{u4, u4, u2} κ κ A) (AddMonoid.toAddZeroClass.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u2 u4} A (Matrix.{u4, u4, u2} κ κ A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u2 u4} A (Matrix.{u4, u4, u2} κ κ A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u4, u2, u1, max u2 u4} (LinearEquiv.{u2, u2, u1, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} κ κ A) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u2 u4} A (Matrix.{u4, u4, u2} κ κ A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u2 u4, max (max u1 u2) u4} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearEquiv.{u2, u2, u1, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u2 u4, max (max u1 u2) u4} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearEquiv.{u2, u2, u1, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u2 u4} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} κ κ A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} κ κ A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} κ κ A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u4, u4, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) κ κ _inst_10 _inst_10 (fun (a : κ) (b : κ) => _inst_11 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 c c) f))
+Case conversion may be inaccurate. Consider using '#align linear_map.det_to_matrix_eq_det_to_matrix LinearMap.det_toMatrix_eq_det_toMatrixₓ'. -/
/-- The determinant of `linear_map.to_matrix` does not depend on the choice of basis. -/
theorem det_toMatrix_eq_det_toMatrix [DecidableEq κ] (b : Basis ι A M) (c : Basis κ A M)
(f : M →ₗ[A] M) : det (LinearMap.toMatrix b b f) = det (LinearMap.toMatrix c c f) := by
@@ -134,6 +170,7 @@ theorem det_toMatrix_eq_det_toMatrix [DecidableEq κ] (b : Basis ι A M) (c : Ba
rw [Basis.toMatrix_mul_toMatrix, Basis.toMatrix_self]
#align linear_map.det_to_matrix_eq_det_to_matrix LinearMap.det_toMatrix_eq_det_toMatrix
+#print LinearMap.detAux /-
/-- The determinant of an endomorphism given a basis.
See `linear_map.det` for a version that populates the basis non-computably.
@@ -148,32 +185,57 @@ irreducible_def detAux : Trunc (Basis ι A M) → (M →ₗ[A] M) →* A :=
(fun b : Basis ι A M => detMonoidHom.comp (toMatrixAlgEquiv b : (M →ₗ[A] M) →* Matrix ι ι A))
fun b c => MonoidHom.ext <| det_toMatrix_eq_det_toMatrix b c
#align linear_map.det_aux LinearMap.detAux
+-/
+/- warning: linear_map.det_aux_def -> LinearMap.detAux_def' is a dubious translation:
+lean 3 declaration is
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u3}} [_inst_8 : CommRing.{u3} A] [_inst_9 : Module.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u3} A (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.detAux.{u1, u2, u3} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 (Trunc.mk.{max (succ u2) (succ u3) (succ u1)} (Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) b)) f) (Matrix.det.{u3, u2} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (coeFn.{max (succ u1) (succ (max u2 u3)), max (succ u1) (succ (max u2 u3))} (LinearEquiv.{u3, u3, u1, max u2 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (fun (_x : LinearEquiv.{u3, u3, u1, max u2 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) => (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> (Matrix.{u2, u2, u3} ι ι A)) (LinearEquiv.hasCoeToFun.{u3, u3, u1, max u2 u3} A A (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))) (LinearMap.toMatrix.{u3, u2, u2, u1, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f))
+but is expected to have type
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : Basis.{u3, u2, u1} ι A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.detAux.{u1, u3, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 (Trunc.mk.{max (max (succ u2) (succ u3)) (succ u1)} (Basis.{u3, u2, u1} ι A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) b)) f) (Matrix.det.{u2, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => Matrix.{u3, u3, u2} ι ι A) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (SMulZeroClass.toSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toZero.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toAddZeroClass.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u1 u3) u2} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u1 u3) u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u3, u3, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f))
+Case conversion may be inaccurate. Consider using '#align linear_map.det_aux_def LinearMap.detAux_def'ₓ'. -/
/-- Unfold lemma for `det_aux`.
See also `det_aux_def'` which allows you to vary the basis.
-/
-theorem detAux_def (b : Basis ι A M) (f : M →ₗ[A] M) :
+theorem detAux_def' (b : Basis ι A M) (f : M →ₗ[A] M) :
LinearMap.detAux (Trunc.mk b) f = Matrix.det (LinearMap.toMatrix b b f) :=
by
rw [det_aux]
rfl
-#align linear_map.det_aux_def LinearMap.detAux_def
-
-theorem detAux_def' {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (tb : Trunc <| Basis ι A M)
+#align linear_map.det_aux_def LinearMap.detAux_def'
+
+/- warning: linear_map.det_aux_def' -> LinearMap.detAux_def'' is a dubious translation:
+lean 3 declaration is
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u3}} [_inst_8 : CommRing.{u3} A] [_inst_9 : Module.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι' : Type.{u4}} [_inst_11 : Fintype.{u4} ι'] [_inst_12 : DecidableEq.{succ u4} ι'] (tb : Trunc.{max (succ u2) (succ u3) (succ u1)} (Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (b' : Basis.{u4, u3, u1} ι' A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u3} A (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.detAux.{u1, u2, u3} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 tb) f) (Matrix.det.{u3, u4} ι' (fun (a : ι') (b : ι') => _inst_12 a b) _inst_11 A _inst_8 (coeFn.{max (succ u1) (succ (max u4 u3)), max (succ u1) (succ (max u4 u3))} (LinearEquiv.{u3, u3, u1, max u4 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u3} ι' ι' A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u4, u4, u3} ι' ι' A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (fun (_x : LinearEquiv.{u3, u3, u1, max u4 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u3} ι' ι' A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u4, u4, u3} ι' ι' A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) => (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> (Matrix.{u4, u4, u3} ι' ι' A)) (LinearEquiv.hasCoeToFun.{u3, u3, u1, max u4 u3} A A (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u3} ι' ι' A) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u4, u4, u3} ι' ι' A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))) (LinearMap.toMatrix.{u3, u4, u4, u1, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) ι' ι' _inst_11 _inst_11 (fun (a : ι') (b : ι') => _inst_12 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b' b') f))
+but is expected to have type
+ forall {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] {ι' : Type.{u4}} [_inst_11 : Fintype.{u4} ι'] [_inst_12 : DecidableEq.{succ u4} ι'] (tb : Trunc.{max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u1, u2, u3} ι A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (b' : Basis.{u4, u2, u3} ι' A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.detAux.{u3, u1, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 tb) f) (Matrix.det.{u2, u4} ι' (fun (a : ι') (b : ι') => _inst_12 a b) _inst_11 A _inst_8 (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u4), succ u3, max (succ u2) (succ u4)} (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => Matrix.{u4, u4, u2} ι' ι' A) _x) (SMulHomClass.toFunLike.{max (max u3 u2) u4, u2, u3, max u2 u4} (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (SMulZeroClass.toSMul.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (AddMonoid.toZero.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (AddMonoid.toAddZeroClass.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u2) u4, u2, u3, max u2 u4} (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u3} (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u4} (Matrix.{u4, u4, u2} ι' ι' A) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u3} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u2 u4} A (Matrix.{u4, u4, u2} ι' ι' A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u3, max u2 u4, max (max u3 u2) u4} A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u3, max u2 u4, max (max u3 u2) u4} A A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearEquiv.{u2, u2, u3, max u2 u4} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u3, max u2 u4} A A (LinearMap.{u2, u2, u3, u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Matrix.{u4, u4, u2} ι' ι' A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u4, u4} ι' ι' A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u3} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u3} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u3} M (AddCommMonoid.toAddMonoid.{u3} M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toMulActionWithZero.{u2, u3} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)))) (Matrix.module.{u2, u4, u4, u2} ι' ι' A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u4, u4, u3, u3} A (CommRing.toCommSemiring.{u2} A _inst_8) ι' ι' _inst_11 _inst_11 (fun (a : ι') (b : ι') => _inst_12 a b) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 b' b') f))
+Case conversion may be inaccurate. Consider using '#align linear_map.det_aux_def' LinearMap.detAux_def''ₓ'. -/
+theorem detAux_def'' {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (tb : Trunc <| Basis ι A M)
(b' : Basis ι' A M) (f : M →ₗ[A] M) :
LinearMap.detAux tb f = Matrix.det (LinearMap.toMatrix b' b' f) :=
by
apply Trunc.induction_on tb
intro b
rw [det_aux_def, det_to_matrix_eq_det_to_matrix b b']
-#align linear_map.det_aux_def' LinearMap.detAux_def'
-
+#align linear_map.det_aux_def' LinearMap.detAux_def''
+
+/- warning: linear_map.det_aux_id -> LinearMap.detAux_id is a dubious translation:
+lean 3 declaration is
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u3}} [_inst_8 : CommRing.{u3} A] [_inst_9 : Module.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : Trunc.{max (succ u2) (succ u3) (succ u1)} (Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)), Eq.{succ u3} A (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.detAux.{u1, u2, u3} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) (LinearMap.id.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (OfNat.ofNat.{u3} A 1 (OfNat.mk.{u3} A 1 (One.one.{u3} A (AddMonoidWithOne.toOne.{u3} A (AddGroupWithOne.toAddMonoidWithOne.{u3} A (AddCommGroupWithOne.toAddGroupWithOne.{u3} A (Ring.toAddCommGroupWithOne.{u3} A (CommRing.toRing.{u3} A _inst_8))))))))
+but is expected to have type
+ forall {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] (b : Trunc.{max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u1, u2, u3} ι A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.detAux.{u3, u1, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) (LinearMap.id.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (NonAssocRing.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) _inst_8)))))
+Case conversion may be inaccurate. Consider using '#align linear_map.det_aux_id LinearMap.detAux_idₓ'. -/
@[simp]
theorem detAux_id (b : Trunc <| Basis ι A M) : LinearMap.detAux b LinearMap.id = 1 :=
(LinearMap.detAux b).map_one
#align linear_map.det_aux_id LinearMap.detAux_id
+/- warning: linear_map.det_aux_comp -> LinearMap.detAux_comp is a dubious translation:
+lean 3 declaration is
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u3}} [_inst_8 : CommRing.{u3} A] [_inst_9 : Module.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : Trunc.{max (succ u2) (succ u3) (succ u1)} (Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (f : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (g : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u3} A (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.detAux.{u1, u2, u3} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) (LinearMap.comp.{u3, u3, u3, u1, u1, u1} A A A M M M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) (RingHomCompTriple.right_ids.{u3, u3} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))))) f g)) (HMul.hMul.{u3, u3, u3} A A A (instHMul.{u3} A (Distrib.toHasMul.{u3} A (Ring.toDistrib.{u3} A (CommRing.toRing.{u3} A _inst_8)))) (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.detAux.{u1, u2, u3} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) f) (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.detAux.{u1, u2, u3} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) g))
+but is expected to have type
+ forall {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] (b : Trunc.{max (max (succ u3) (succ u2)) (succ u1)} (Basis.{u1, u2, u3} ι A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9)) (f : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (g : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.comp.{u2, u2, u2, u3, u3, u3} A A A M M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) f g)) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.detAux.{u3, u1, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) (LinearMap.comp.{u2, u2, u2, u3, u3, u3} A A A M M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) f g)) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) g) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (NonUnitalNonAssocRing.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (NonAssocRing.toNonUnitalNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) f) _inst_8))))) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.detAux.{u3, u1, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) f) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u3 u2, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u3} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.detAux.{u3, u1, u2} M _inst_2 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 _inst_9 b) g))
+Case conversion may be inaccurate. Consider using '#align linear_map.det_aux_comp LinearMap.detAux_compₓ'. -/
@[simp]
theorem detAux_comp (b : Trunc <| Basis ι A M) (f g : M →ₗ[A] M) :
LinearMap.detAux b (f.comp g) = LinearMap.detAux b f * LinearMap.detAux b g :=
@@ -184,6 +246,7 @@ section
open Classical
+#print LinearMap.det /-
-- Discourage the elaborator from unfolding `det` and producing a huge term by marking it
-- as irreducible.
/-- The determinant of an endomorphism independent of basis.
@@ -194,7 +257,14 @@ protected irreducible_def det : (M →ₗ[A] M) →* A :=
if H : ∃ s : Finset M, Nonempty (Basis s A M) then LinearMap.detAux (Trunc.mk H.choose_spec.some)
else 1
#align linear_map.det LinearMap.det
+-/
+/- warning: linear_map.coe_det -> LinearMap.coe_det is a dubious translation:
+lean 3 declaration is
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_11 : DecidableEq.{succ u1} M], Eq.{max (succ u1) (succ u2)} ((LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9)) (dite.{max (succ u1) (succ u2)} ((LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (Exists.{succ u1} (Finset.{u1} M) (fun (s : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))) (Classical.propDecidable (Exists.{succ u1} (Finset.{u1} M) (fun (s : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (fun (H : Exists.{succ u1} (Finset.{u1} M) (fun (s : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))) => coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.detAux.{u1, u1, u2} M _inst_2 (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) (Exists.choose.{succ u1} (Finset.{u1} M) (fun (a : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) a) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) H)) (fun (a : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) (Exists.choose.{succ u1} (Finset.{u1} M) (fun (a : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) a) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) H)) (b : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) (Exists.choose.{succ u1} (Finset.{u1} M) (fun (a : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) a) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) H)) => Subtype.decidableEq.{u1} M (fun (x : M) => Membership.Mem.{u1, u1} M (Finset.{u1} M) (Finset.hasMem.{u1} M) x (Exists.choose.{succ u1} (Finset.{u1} M) (fun (a : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) a) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) H)) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u1} M (Exists.choose.{succ u1} (Finset.{u1} M) (fun (a : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) a) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) H)) A _inst_8 _inst_9 (Trunc.mk.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) (Exists.choose.{succ u1} (Finset.{u1} M) (fun (a : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) a) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) H)) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (Nonempty.some.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) (Exists.choose.{succ u1} (Finset.{u1} M) (fun (a : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) a) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) H)) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (Exists.choose_spec.{succ u1} (Finset.{u1} M) (fun (s : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) H))))) (fun (H : Not (Exists.{succ u1} (Finset.{u1} M) (fun (s : Finset.{u1} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) => OfNat.ofNat.{max u1 u2} ((LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) 1 (OfNat.mk.{max u1 u2} ((LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) 1 (One.one.{max u1 u2} ((LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (Pi.instOne.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (ᾰ : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (fun (i : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => AddMonoidWithOne.toOne.{u2} A (AddGroupWithOne.toAddMonoidWithOne.{u2} A (AddCommGroupWithOne.toAddGroupWithOne.{u2} A (Ring.toAddCommGroupWithOne.{u2} A (CommRing.toRing.{u2} A _inst_8))))))))))
+but is expected to have type
+ forall {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] [_inst_9 : Module.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] [_inst_11 : DecidableEq.{succ u2} M], Eq.{max (succ u2) (succ u1)} (forall (ᾰ : LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9), (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))))) (LinearMap.det.{u2, u1} M _inst_2 A _inst_8 _inst_9)) (FunLike.coe.{max (succ u2) (succ u1), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (a : LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) a) (MulHomClass.toFunLike.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))))) (dite.{max (succ u1) (succ u2)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Exists.{succ u2} (Finset.{u2} M) (fun (s : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))) (Classical.propDecidable (Exists.{succ u2} (Finset.{u2} M) (fun (s : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (fun (H : Exists.{succ u2} (Finset.{u2} M) (fun (s : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))) => LinearMap.detAux.{u2, u2, u1} M _inst_2 (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H))) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H))) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H))) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H)) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u2} M (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H)) A _inst_8 _inst_9 (Trunc.mk.{max (succ u1) (succ u2)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H))) A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9) (Nonempty.some.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x (Exists.choose.{succ u2} (Finset.{u2} M) (fun (a : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x a)) A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H))) A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9) (Exists.choose_spec.{succ u2} (Finset.{u2} M) (fun (s : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)) H)))) (fun (H : Not (Exists.{succ u2} (Finset.{u2} M) (fun (s : Finset.{u2} M) => Nonempty.{max (succ u2) (succ u1)} (Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) => OfNat.ofNat.{max u2 u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) 1 (One.toOfNat1.{max u2 u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (instOneMonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))))
+Case conversion may be inaccurate. Consider using '#align linear_map.coe_det LinearMap.coe_detₓ'. -/
theorem coe_det [DecidableEq M] :
⇑(LinearMap.det : (M →ₗ[A] M) →* A) =
if H : ∃ s : Finset M, Nonempty (Basis s A M) then
@@ -211,6 +281,12 @@ theorem coe_det [DecidableEq M] :
end
+/- warning: linear_map.det_eq_det_to_matrix_of_finset -> LinearMap.det_eq_det_toMatrix_of_finset is a dubious translation:
+lean 3 declaration is
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_11 : DecidableEq.{succ u1} M] {s : Finset.{u1} M} (b : Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} A (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f) (Matrix.det.{u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (fun (a : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (b : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) => Subtype.decidableEq.{u1} M (fun (x : M) => Membership.Mem.{u1, u1} M (Finset.{u1} M) (Finset.hasMem.{u1} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u1} M s) A _inst_8 (coeFn.{max (succ u1) (succ (max u1 u2)), max (succ u1) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u1, max u1 u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.toMatrix._proof_2.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u1, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.module.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u2, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u2, u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (fun (_x : LinearEquiv.{u2, u2, u1, max u1 u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.toMatrix._proof_2.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u1, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.module.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u2, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u2, u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) => (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A)) (LinearEquiv.hasCoeToFun.{u2, u2, u1, max u1 u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u1, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.module.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u2, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u2, u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.toMatrix._proof_2.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.toMatrix.{u2, u1, u1, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (Finset.Subtype.fintype.{u1} M s) (Finset.Subtype.fintype.{u1} M s) (fun (a : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (b : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) => Subtype.decidableEq.{u1} M (fun (x : M) => Membership.Mem.{u1, u1} M (Finset.{u1} M) (Finset.hasMem.{u1} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f))
+but is expected to have type
+ forall {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] [_inst_9 : Module.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] [_inst_11 : DecidableEq.{succ u2} M] {s : Finset.{u2} M} (b : Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9) (f : LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) f) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))))) (LinearMap.det.{u2, u1} M _inst_2 A _inst_8 _inst_9) f) (Matrix.det.{u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u2} M s) A _inst_8 (FunLike.coe.{max (succ u2) (succ u1), succ u2, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, u2, max u2 u1} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (SMulZeroClass.toSMul.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Module.toDistribMulAction.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, u2, max u2 u1} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u1, u2, max u2 u1, max u2 u1} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u2, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u2, max u2 u1} A A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.toMatrix.{u1, u2, u2, u2, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Finset.Subtype.fintype.{u2} M s) (Finset.Subtype.fintype.{u2} M s) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 b b) f))
+Case conversion may be inaccurate. Consider using '#align linear_map.det_eq_det_to_matrix_of_finset LinearMap.det_eq_det_toMatrix_of_finsetₓ'. -/
-- Auxiliary lemma, the `simp` normal form goes in the other direction
-- (using `linear_map.det_to_matrix`)
theorem det_eq_det_toMatrix_of_finset [DecidableEq M] {s : Finset M} (b : Basis s A M)
@@ -220,6 +296,12 @@ theorem det_eq_det_toMatrix_of_finset [DecidableEq M] {s : Finset M} (b : Basis
rw [LinearMap.coe_det, dif_pos, det_aux_def' _ b] <;> assumption
#align linear_map.det_eq_det_to_matrix_of_finset LinearMap.det_eq_det_toMatrix_of_finset
+/- warning: linear_map.det_to_matrix -> LinearMap.det_toMatrix is a dubious translation:
+lean 3 declaration is
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u3}} [_inst_8 : CommRing.{u3} A] [_inst_9 : Module.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u3} A (Matrix.det.{u3, u2} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (coeFn.{max (succ u1) (succ (max u2 u3)), max (succ u1) (succ (max u2 u3))} (LinearEquiv.{u3, u3, u1, max u2 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (fun (_x : LinearEquiv.{u3, u3, u1, max u2 u3} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) => (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> (Matrix.{u2, u2, u3} ι ι A)) (LinearEquiv.hasCoeToFun.{u3, u3, u1, max u2 u3} A A (LinearMap.{u3, u3, u1, u1} A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u3} ι ι A) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.addCommMonoid.{u3, u3, u1, u1} A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Matrix.addCommMonoid.{u3, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))))) (LinearMap.module.{u3, u3, u3, u1, u1} A A A M M (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u3, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u3, u2, u2, u3} ι ι A A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (CommSemiring.toSemiring.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8)) (LinearMap.toMatrix._proof_2.{u3} A (CommRing.toCommSemiring.{u3} A _inst_8))) (LinearMap.toMatrix.{u3, u2, u2, u1, u1} A (CommRing.toCommSemiring.{u3} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f)) (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.det.{u1, u3} M _inst_2 A _inst_8 _inst_9) f)
+but is expected to have type
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : Basis.{u3, u2, u1} ι A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} A (Matrix.det.{u2, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 A _inst_8 (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u1, max (succ u3) (succ u2)} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => Matrix.{u3, u3, u2} ι ι A) _x) (SMulHomClass.toFunLike.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (SMulZeroClass.toSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toZero.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (AddMonoid.toAddZeroClass.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u3) u2, u2, u1, max u3 u2} (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (MonoidWithZero.toMonoid.{u2} A (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Matrix.{u3, u3, u2} ι ι A) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))))) (Module.toDistribMulAction.{u2, u1} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u2, max u3 u2} A (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, max u3 u2, max (max u1 u3) u2} A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, max u3 u2, max (max u1 u3) u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearEquiv.{u2, u2, u1, max u2 u3} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, max u3 u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u3, u3, u2} ι ι A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u3, u3} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (smulCommClass_self.{u2, u1} A M (CommSemiring.toCommMonoid.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (MulActionWithZero.toMulAction.{u2, u1} A M (Semiring.toMonoidWithZero.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} A M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)))) (Matrix.module.{u2, u3, u3, u2} ι ι A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))))) (LinearMap.toMatrix.{u2, u3, u3, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f)
+Case conversion may be inaccurate. Consider using '#align linear_map.det_to_matrix LinearMap.det_toMatrixₓ'. -/
@[simp]
theorem det_toMatrix (b : Basis ι A M) (f : M →ₗ[A] M) : Matrix.det (toMatrix b b f) = f.det :=
by
@@ -227,22 +309,46 @@ theorem det_toMatrix (b : Basis ι A M) (f : M →ₗ[A] M) : Matrix.det (toMatr
rw [det_eq_det_to_matrix_of_finset b.reindex_finset_range, det_to_matrix_eq_det_to_matrix b]
#align linear_map.det_to_matrix LinearMap.det_toMatrix
+/- warning: linear_map.det_to_matrix' -> LinearMap.det_toMatrix' is a dubious translation:
+lean 3 declaration is
+ forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {ι : Type.{u2}} [_inst_11 : Fintype.{u2} ι] [_inst_12 : DecidableEq.{succ u2} ι] (f : LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))), Eq.{succ u1} A (Matrix.det.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_12 a b) _inst_11 A _inst_8 (coeFn.{succ (max u2 u1), succ (max u2 u1)} (LinearEquiv.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_1.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.toMatrix'._proof_2.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_3.{u1, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι)) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (_x : LinearEquiv.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_1.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.toMatrix'._proof_2.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_3.{u1, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι)) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) -> (Matrix.{u2, u2, u1} ι ι A)) (LinearEquiv.hasCoeToFun.{u1, u1, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.Function.module.{u2, u1, u1} ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_3.{u1, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι)) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (LinearMap.toMatrix'._proof_1.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.toMatrix'._proof_2.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.toMatrix'.{u1, u2, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι ι _inst_11 (fun (a : ι) (b : ι) => _inst_12 a b)) f)) (coeFn.{max (succ u1) (succ (max u2 u1)), max (succ (max u2 u1)) (succ u1)} (MonoidHom.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u2 u1} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (fun (_x : MonoidHom.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u2 u1} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) => (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) -> A) (MonoidHom.hasCoeToFun.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u2 u1} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.det.{max u2 u1, u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A _inst_8 (Pi.Function.module.{u2, u1, u1} ι A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toAddCommGroup.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) f)
+but is expected to have type
+ forall {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] {ι : Type.{u2}} [_inst_11 : Fintype.{u2} ι] [_inst_12 : DecidableEq.{succ u2} ι] (f : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))), Eq.{succ u1} A (Matrix.det.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_12 a b) _inst_11 A _inst_8 (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (_x : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) => Matrix.{u2, u2, u1} ι ι A) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (SMulZeroClass.toSMul.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddMonoid.toZero.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddMonoid.toAddZeroClass.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Module.toDistribMulAction.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι A) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, max u2 u1, max u2 u1} A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (ι -> A) (ι -> A) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.{u2, u2, u1} ι ι A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} A A A (ι -> A) (ι -> A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1980 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.1983 : ι) => A) A A (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => Algebra.toSMul.{u1, u1} A A (CommRing.toCommSemiring.{u1} A _inst_8) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Algebra.id.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (fun (i : ι) => smulCommClass_self.{u1, u1} A A (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u1} A A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (CommMonoidWithZero.toZero.{u1} A (CommSemiring.toCommMonoidWithZero.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (MonoidWithZero.toMulActionWithZero.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (Matrix.module.{u1, u2, u2, u1} ι ι A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.toMatrix'.{u1, u2, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) ι ι _inst_11 (fun (a : ι) (b : ι) => _inst_12 a b)) f)) (FunLike.coe.{max (succ u1) (succ (max u1 u2)), succ (max u1 u2), succ u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u1 u2} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (_x : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) => A) _x) (MulHomClass.toFunLike.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u1 u2} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulOneClass.toMul.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u1 u2} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))))))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u1 u2} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u1 u2} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) A (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (ι -> A) (ι -> A) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (Module.End.ring.{u1, max u1 u2} A (ι -> A) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))))) (LinearMap.det.{max u1 u2, u1} (ι -> A) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => A) (fun (i : ι) => Ring.toAddCommGroup.{u1} A (CommRing.toRing.{u1} A _inst_8))) A _inst_8 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Determinant._hyg.2660 : ι) => A) A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} A (NonAssocRing.toNonUnitalNonAssocRing.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (fun (i : ι) => Semiring.toModule.{u1} A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8))))) f)
+Case conversion may be inaccurate. Consider using '#align linear_map.det_to_matrix' LinearMap.det_toMatrix'ₓ'. -/
@[simp]
theorem det_toMatrix' {ι : Type _} [Fintype ι] [DecidableEq ι] (f : (ι → A) →ₗ[A] ι → A) :
det f.toMatrix' = f.det := by simp [← to_matrix_eq_to_matrix']
#align linear_map.det_to_matrix' LinearMap.det_toMatrix'
+/- warning: linear_map.det_to_lin -> LinearMap.det_toLin is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (b : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (f : Matrix.{u3, u3, u1} ι ι R), Eq.{succ u1} R (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) (coeFn.{max (succ (max u3 u1)) (succ u2), max (succ (max u3 u1)) (succ u2)} (LinearEquiv.{u1, u1, max u3 u1, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.toLin._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.{u3, u3, u1} ι ι R) (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u1, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, u2, u2} R R M M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u3, u3, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u2} R R R M M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_3 (Matrix.toLin._proof_3.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3))) (fun (_x : LinearEquiv.{u1, u1, max u3 u1, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.toLin._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.{u3, u3, u1} ι ι R) (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u1, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, u2, u2} R R M M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u3, u3, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u2} R R R M M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_3 (Matrix.toLin._proof_3.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3))) => (Matrix.{u3, u3, u1} ι ι R) -> (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3)) (LinearEquiv.hasCoeToFun.{u1, u1, max u3 u1, u2} R R (Matrix.{u3, u3, u1} ι ι R) (LinearMap.{u1, u1, u2, u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, u2, u2} R R M M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u3, u3, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, u2, u2} R R R M M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_3 (Matrix.toLin._proof_3.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.toLin._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.toLin.{u1, u3, u3, u2, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 b b) f)) (Matrix.det.{u1, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 f)
+but is expected to have type
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (b : Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (f : Matrix.{u3, u3, u2} ι ι R), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (Matrix.{u3, u3, u2} ι ι R) (fun (a : Matrix.{u3, u3, u2} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Matrix.{u3, u3, u2} ι ι R) => LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) a) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, max u2 u3, u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (AddMonoid.toZero.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (SMulZeroClass.toSMul.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, max u2 u3, u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (SemilinearMapClass.distribMulActionHomClass.{u2, max u2 u3, u1, max (max u2 u1) u3} R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u2 u3, u1, max (max u2 u1) u3} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u2 u3, u1} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (Matrix.toLin.{u2, u3, u3, u1, u1} R (CommRing.toCommSemiring.{u2} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 b b) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3)))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u2) (succ u3), succ u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (Matrix.{u3, u3, u2} ι ι R) (fun (_x : Matrix.{u3, u3, u2} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Matrix.{u3, u3, u2} ι ι R) => LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) _x) (SMulHomClass.toFunLike.{max (max u2 u1) u3, u2, max u2 u3, u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (SMulZeroClass.toSMul.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (AddMonoid.toZero.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (SMulZeroClass.toSMul.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddMonoid.toZero.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddMonoid.toAddZeroClass.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u1) u3, u2, max u2 u3, u1} (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Matrix.{u3, u3, u2} ι ι R) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{u1} (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Module.toDistribMulAction.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Module.toDistribMulAction.{u2, u1} R (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (SemilinearMapClass.distribMulActionHomClass.{u2, max u2 u3, u1, max (max u2 u1) u3} R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u2 u3, u1, max (max u2 u1) u3} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.{u2, u2, max u2 u3, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u2 u3, u1} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, u1, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) _inst_3 (smulCommClass_self.{u2, u1} R M (CommSemiring.toCommMonoid.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))))) (Matrix.toLin.{u2, u3, u3, u1, u1} R (CommRing.toCommSemiring.{u2} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 b b) f)) (Matrix.det.{u2, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 f)
+Case conversion may be inaccurate. Consider using '#align linear_map.det_to_lin LinearMap.det_toLinₓ'. -/
@[simp]
theorem det_toLin (b : Basis ι R M) (f : Matrix ι ι R) :
LinearMap.det (Matrix.toLin b b f) = f.det := by
rw [← LinearMap.det_toMatrix b, LinearMap.toMatrix_toLin]
#align linear_map.det_to_lin LinearMap.det_toLin
+/- warning: linear_map.det_to_lin' -> LinearMap.det_toLin' is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] (f : Matrix.{u2, u2, u1} ι ι R), Eq.{succ u1} R (coeFn.{max (succ u1) (succ (max u2 u1)), max (succ (max u2 u1)) (succ u1)} (MonoidHom.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u2 u1} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u2 u1} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) -> R) (MonoidHom.hasCoeToFun.{max u2 u1, u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u2 u1} (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u2 u1} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{max u2 u1, u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) R _inst_1 (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (coeFn.{succ (max u2 u1), succ (max u2 u1)} (LinearEquiv.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.toLin'._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_3.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι))) (fun (_x : LinearEquiv.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.toLin'._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_3.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι))) => (Matrix.{u2, u2, u1} ι ι R) -> (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearEquiv.hasCoeToFun.{u1, u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u2 u1, max u2 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u2 u1, max u2 u1} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.module.{u1, u1, u1, max u2 u1, max u2 u1} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.Function.module.{u2, u1, u1} ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_3.{u1, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Matrix.toLin'._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.toLin'._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.toLin'.{u1, u2, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b)) f)) (Matrix.det.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 f)
+but is expected to have type
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] (f : Matrix.{u2, u2, u1} ι ι R), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => R) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (Matrix.{u2, u2, u1} ι ι R) (fun (a : Matrix.{u2, u2, u1} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Matrix.{u2, u2, u1} ι ι R) => LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) a) (SMulHomClass.toFunLike.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toZero.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, max u2 u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (Matrix.toLin'.{u1, u2, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b)) f)) (FunLike.coe.{max (succ u1) (succ (max u1 u2)), succ (max u1 u2), succ u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u1 u2} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (_x : LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => R) _x) (MulHomClass.toFunLike.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u1 u2} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulOneClass.toMul.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u1 u2} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))))) (MulOneClass.toMul.{u1} R (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, max u1 u2, u1} (MonoidHom.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u1 u2} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u1 u2} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (MonoidHom.monoidHomClass.{max u1 u2, u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (MulZeroOneClass.toMulOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocSemiring.toMulZeroOneClass.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (NonAssocRing.toNonAssocSemiring.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Ring.toNonAssocRing.{max u1 u2} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (ι -> R) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (AddCommGroup.toAddCommMonoid.{max u1 u2} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.End.ring.{u1, max u1 u2} R (ι -> R) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Pi.addCommGroup.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))))) (LinearMap.det.{max u1 u2, u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (ᾰ : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u1} R (CommRing.toRing.{u1} R _inst_1))) R _inst_1 (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (FunLike.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (Matrix.{u2, u2, u1} ι ι R) (fun (_x : Matrix.{u2, u2, u1} ι ι R) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Matrix.{u2, u2, u1} ι ι R) => LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toZero.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddMonoid.toAddZeroClass.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, max u2 u1, max u2 u1} (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} ι ι R) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Module.toDistribMulAction.{u1, max u2 u1} R (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u1, max u2 u1, max u2 u1} R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearEquiv.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u1, max u2 u1} R R (Matrix.{u2, u2, u1} ι ι R) (LinearMap.{u1, u1, max u1 u2, max u1 u2} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (ι -> R) (ι -> R) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u2, u2} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.addCommMonoid.{u1, u1, max u1 u2, max u1 u2} R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.module.{u1, u2, u2, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, max u1 u2, max u1 u2} R R R (ι -> R) (ι -> R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.addCommMonoid.{u2, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2103 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Pi.module.{u2, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (Pi.smulCommClass.{u2, u1, u1, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.ToLin._hyg.2106 : ι) => R) R R (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => Algebra.toSMul.{u1, u1} R R (CommRing.toCommSemiring.{u1} R _inst_1) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Algebra.id.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (fun (i : ι) => smulCommClass_self.{u1, u1} R R (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u1} R R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (Matrix.toLin'.{u1, u2, u2} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b)) f)) (Matrix.det.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 f)
+Case conversion may be inaccurate. Consider using '#align linear_map.det_to_lin' LinearMap.det_toLin'ₓ'. -/
@[simp]
theorem det_toLin' (f : Matrix ι ι R) : LinearMap.det f.toLin' = f.det := by
simp only [← to_lin_eq_to_lin', det_to_lin]
#align linear_map.det_to_lin' LinearMap.det_toLin'
+/- warning: linear_map.det_cases -> LinearMap.det_cases is a dubious translation:
+lean 3 declaration is
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_11 : DecidableEq.{succ u1} M] {P : A -> Prop} (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), (forall (s : Finset.{u1} M) (b : Basis.{u1, u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9), P (Matrix.det.{u2, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (fun (a : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (b : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) => Subtype.decidableEq.{u1} M (fun (x : M) => Membership.Mem.{u1, u1} M (Finset.{u1} M) (Finset.hasMem.{u1} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u1} M s) A _inst_8 (coeFn.{max (succ u1) (succ (max u1 u2)), max (succ u1) (succ (max u1 u2))} (LinearEquiv.{u2, u2, u1, max u1 u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.toMatrix._proof_2.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u1, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.module.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u2, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u2, u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (fun (_x : LinearEquiv.{u2, u2, u1, max u1 u2} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.toMatrix._proof_2.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u1, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.module.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u2, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u2, u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) => (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A)) (LinearEquiv.hasCoeToFun.{u2, u2, u1, max u1 u2} A A (LinearMap.{u2, u2, u1, u1} A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Matrix.{u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Matrix.addCommMonoid.{u2, u1, u1} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))))) (LinearMap.module.{u2, u2, u2, u1, u1} A A A M M (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) _inst_9 (LinearMap.toMatrix._proof_3.{u2, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Matrix.module.{u2, u1, u1, u2} (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) A A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (CommSemiring.toSemiring.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)))) (LinearMap.toMatrix._proof_1.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8)) (LinearMap.toMatrix._proof_2.{u2} A (CommRing.toCommSemiring.{u2} A _inst_8))) (LinearMap.toMatrix.{u2, u1, u1, u1, u1} A (CommRing.toCommSemiring.{u2} A _inst_8) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (Finset.Subtype.fintype.{u1} M s) (Finset.Subtype.fintype.{u1} M s) (fun (a : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) (b : coeSort.{succ u1, succ (succ u1)} (Finset.{u1} M) Type.{u1} (Finset.hasCoeToSort.{u1} M) s) => Subtype.decidableEq.{u1} M (fun (x : M) => Membership.Mem.{u1, u1} M (Finset.{u1} M) (Finset.hasMem.{u1} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 b b) f))) -> (P (OfNat.ofNat.{u2} A 1 (OfNat.mk.{u2} A 1 (One.one.{u2} A (AddMonoidWithOne.toOne.{u2} A (AddGroupWithOne.toAddMonoidWithOne.{u2} A (AddCommGroupWithOne.toAddGroupWithOne.{u2} A (Ring.toAddCommGroupWithOne.{u2} A (CommRing.toRing.{u2} A _inst_8))))))))) -> (P (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f))
+but is expected to have type
+ forall {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {A : Type.{u1}} [_inst_8 : CommRing.{u1} A] [_inst_9 : Module.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] [_inst_11 : DecidableEq.{succ u2} M] {P : A -> Prop} (f : LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9), (forall (s : Finset.{u2} M) (b : Basis.{u2, u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9), P (Matrix.det.{u1, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) (Finset.Subtype.fintype.{u2} M s) A _inst_8 (FunLike.coe.{max (succ u2) (succ u1), succ u2, max (succ u2) (succ u1)} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) _x) (SMulHomClass.toFunLike.{max u2 u1, u1, u2, max u2 u1} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (SMulZeroClass.toSMul.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddMonoid.toZero.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribSMul.toSMulZeroClass.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddMonoid.toAddZeroClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (DistribMulAction.toDistribSMul.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Module.toDistribMulAction.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))))))) (SMulZeroClass.toSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddMonoid.toZero.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddMonoid.toAddZeroClass.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u1, u2, max u2 u1} (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (MonoidWithZero.toMonoid.{u1} A (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (AddCommMonoid.toAddMonoid.{u2} (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (AddCommMonoid.toAddMonoid.{max u2 u1} (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))))) (Module.toDistribMulAction.{u1, u2} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9))))) (Module.toDistribMulAction.{u1, max u2 u1} A (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (SemilinearMapClass.distribMulActionHomClass.{u1, u2, max u2 u1, max u2 u1} A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, u2, max u2 u1, max u2 u1} A A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearEquiv.{u1, u1, u2, max u1 u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, u2, max u2 u1} A A (LinearMap.{u1, u1, u2, u2} A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Matrix.{u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (LinearMap.addCommMonoid.{u1, u1, u2, u2} A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Matrix.addCommMonoid.{u1, u2, u2} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u2} A A A M M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) _inst_9 (smulCommClass_self.{u1, u2} A M (CommSemiring.toCommMonoid.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (MulActionWithZero.toMulAction.{u1, u2} A M (Semiring.toMonoidWithZero.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (Module.toMulActionWithZero.{u1, u2} A M (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9)))) (Matrix.module.{u1, u2, u2, u1} (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) A A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))))) (Semiring.toModule.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHom.id.{u1} A (Semiring.toNonAssocSemiring.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8))) (RingHomInvPair.ids.{u1} A (CommSemiring.toSemiring.{u1} A (CommRing.toCommSemiring.{u1} A _inst_8)))))))) (LinearMap.toMatrix.{u1, u2, u2, u2, u2} A (CommRing.toCommSemiring.{u1} A _inst_8) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (Finset.Subtype.fintype.{u2} M s) (Finset.Subtype.fintype.{u2} M s) (fun (a : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) (b : Subtype.{succ u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s)) => Subtype.instDecidableEqSubtype.{u2} M (fun (x : M) => Membership.mem.{u2, u2} M (Finset.{u2} M) (Finset.instMembershipFinset.{u2} M) x s) (fun (a : M) (b : M) => _inst_11 a b) a b) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9 b b) f))) -> (P (OfNat.ofNat.{u1} A 1 (One.toOfNat1.{u1} A (NonAssocRing.toOne.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) -> (P (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u1} A (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))) (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} A A (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) (RingHom.id.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u1, u2} A M (Ring.toSemiring.{u1} A (CommRing.toRing.{u1} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u1} A (NonAssocSemiring.toMulZeroOneClass.{u1} A (NonAssocRing.toNonAssocSemiring.{u1} A (Ring.toNonAssocRing.{u1} A (CommRing.toRing.{u1} A _inst_8)))))))) (LinearMap.det.{u2, u1} M _inst_2 A _inst_8 _inst_9) f))
+Case conversion may be inaccurate. Consider using '#align linear_map.det_cases LinearMap.det_casesₓ'. -/
/-- To show `P f.det` it suffices to consider `P (to_matrix _ _ f).det` and `P 1`. -/
@[elab_as_elim]
theorem det_cases [DecidableEq M] {P : A → Prop} (f : M →ₗ[A] M)
@@ -255,16 +361,34 @@ theorem det_cases [DecidableEq M] {P : A → Prop} (f : M →ₗ[A] M)
· exact h1
#align linear_map.det_cases LinearMap.det_cases
+/- warning: linear_map.det_comp -> LinearMap.det_comp is a dubious translation:
+lean 3 declaration is
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (g : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} A (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearMap.comp.{u2, u2, u2, u1, u1, u1} A A A M M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomCompTriple.right_ids.{u2, u2} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))) f g)) (HMul.hMul.{u2, u2, u2} A A A (instHMul.{u2} A (Distrib.toHasMul.{u2} A (Ring.toDistrib.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) g))
+but is expected to have type
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (g : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.comp.{u2, u2, u2, u1, u1, u1} A A A M M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) f g)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearMap.comp.{u2, u2, u2, u1, u1, u1} A A A M M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) f g)) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) g) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (NonUnitalNonAssocRing.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (NonAssocRing.toNonUnitalNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) _inst_8))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) g))
+Case conversion may be inaccurate. Consider using '#align linear_map.det_comp LinearMap.det_compₓ'. -/
@[simp]
theorem det_comp (f g : M →ₗ[A] M) : (f.comp g).det = f.det * g.det :=
LinearMap.det.map_mul f g
#align linear_map.det_comp LinearMap.det_comp
+/- warning: linear_map.det_id -> LinearMap.det_id is a dubious translation:
+lean 3 declaration is
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)], Eq.{succ u2} A (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearMap.id.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (OfNat.ofNat.{u2} A 1 (OfNat.mk.{u2} A 1 (One.one.{u2} A (AddMonoidWithOne.toOne.{u2} A (AddGroupWithOne.toAddMonoidWithOne.{u2} A (AddCommGroupWithOne.toAddGroupWithOne.{u2} A (Ring.toAddCommGroupWithOne.{u2} A (CommRing.toRing.{u2} A _inst_8))))))))
+but is expected to have type
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)], Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearMap.id.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (NonAssocRing.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearMap.id.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) _inst_8)))))
+Case conversion may be inaccurate. Consider using '#align linear_map.det_id LinearMap.det_idₓ'. -/
@[simp]
theorem det_id : (LinearMap.id : M →ₗ[A] M).det = 1 :=
LinearMap.det.map_one
#align linear_map.det_id LinearMap.det_id
+/- warning: linear_map.det_smul -> LinearMap.det_smul is a dubious translation:
+lean 3 declaration is
+ forall {𝕜 : Type.{u1}} [_inst_11 : Field.{u1} 𝕜] {M : Type.{u2}} [_inst_12 : AddCommGroup.{u2} M] [_inst_13 : Module.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12)] (c : 𝕜) (f : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13), Eq.{succ u1} 𝕜 (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) => (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) -> 𝕜) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) (LinearMap.det.{u2, u1} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)) _inst_13) (SMul.smul.{u1, u2} 𝕜 (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (LinearMap.hasSmul.{u1, u1, u1, u2, u2} 𝕜 𝕜 𝕜 M M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13 (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) (Ring.toMonoid.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (Module.toDistribMulAction.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13) (smulCommClass_self.{u1, u2} 𝕜 M (CommRing.toCommMonoid.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11))) (MulActionWithZero.toMulAction.{u1, u2} 𝕜 M (Semiring.toMonoidWithZero.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11)))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12)))) (Module.toMulActionWithZero.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13)))) c f)) (HMul.hMul.{u1, u1, u1} 𝕜 𝕜 𝕜 (instHMul.{u1} 𝕜 (Distrib.toHasMul.{u1} 𝕜 (Ring.toDistrib.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))) (HPow.hPow.{u1, 0, u1} 𝕜 Nat 𝕜 (instHPow.{u1, 0} 𝕜 Nat (Monoid.Pow.{u1} 𝕜 (Ring.toMonoid.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))) c (FiniteDimensional.finrank.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) _inst_12 _inst_13)) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) => (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) -> 𝕜) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) (LinearMap.det.{u2, u1} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)) _inst_13) f))
+but is expected to have type
+ forall {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] {M : Type.{u1}} [_inst_12 : AddCommGroup.{u1} M] [_inst_13 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12)] (c : 𝕜) (f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) (HSMul.hSMul.{u2, u1, u1} 𝕜 (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (instHSMul.{u2, u1} 𝕜 (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.instSMulLinearMap.{u2, u2, u2, u1, u1} 𝕜 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13 (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) (MonoidWithZero.toMonoid.{u2} 𝕜 (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) (Module.toDistribMulAction.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13) (smulCommClass_self.{u2, u1} 𝕜 M (CommRing.toCommMonoid.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))) (MulActionWithZero.toMulAction.{u2, u1} 𝕜 M (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_12))))) (Module.toMulActionWithZero.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13))))) c f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13)))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_13) (HSMul.hSMul.{u2, u1, u1} 𝕜 (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (instHSMul.{u2, u1} 𝕜 (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.instSMulLinearMap.{u2, u2, u2, u1, u1} 𝕜 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13 (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) (MonoidWithZero.toMonoid.{u2} 𝕜 (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))) (Module.toDistribMulAction.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13) (smulCommClass_self.{u2, u1} 𝕜 M (CommRing.toCommMonoid.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))) (MulActionWithZero.toMulAction.{u2, u1} 𝕜 M (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_12))))) (Module.toMulActionWithZero.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13))))) c f)) (HMul.hMul.{u2, u2, u2} 𝕜 ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) 𝕜 (instHMul.{u2} 𝕜 (NonUnitalNonAssocRing.toMul.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11)))))) (HPow.hPow.{u2, 0, u2} 𝕜 Nat 𝕜 (instHPow.{u2, 0} 𝕜 Nat (Monoid.Pow.{u2} 𝕜 (MonoidWithZero.toMonoid.{u2} 𝕜 (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))))) c (FiniteDimensional.finrank.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) _inst_12 _inst_13)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13)))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_13) f))
+Case conversion may be inaccurate. Consider using '#align linear_map.det_smul LinearMap.det_smulₓ'. -/
/-- Multiplying a map by a scalar `c` multiplies its determinant by `c ^ dim M`. -/
@[simp]
theorem det_smul {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCommGroup M] [Module 𝕜 M] (c : 𝕜)
@@ -282,6 +406,12 @@ theorem det_smul {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCommGroup M] [Mod
simp [coe_det, H, this]
#align linear_map.det_smul LinearMap.det_smul
+/- warning: linear_map.det_zero' -> LinearMap.det_zero' is a dubious translation:
+lean 3 declaration is
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_11 : Finite.{succ u3} ι] [_inst_12 : Nonempty.{succ u3} ι], (Basis.{u3, u2, u1} ι A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) -> (Eq.{succ u2} A (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (OfNat.mk.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.zero.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.hasZero.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))))))) (OfNat.ofNat.{u2} A 0 (OfNat.mk.{u2} A 0 (Zero.zero.{u2} A (MulZeroClass.toHasZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))))))))
+but is expected to have type
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_11 : Finite.{succ u3} ι] [_inst_12 : Nonempty.{succ u3} ι], (Basis.{u3, u2, u1} ι A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) -> (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (CommMonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (CommSemiring.toCommMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (CommRing.toCommSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) _inst_8))))))
+Case conversion may be inaccurate. Consider using '#align linear_map.det_zero' LinearMap.det_zero'ₓ'. -/
theorem det_zero' {ι : Type _} [Finite ι] [Nonempty ι] (b : Basis ι A M) :
LinearMap.det (0 : M →ₗ[A] M) = 0 :=
by
@@ -290,6 +420,12 @@ theorem det_zero' {ι : Type _} [Finite ι] [Nonempty ι] (b : Basis ι A M) :
rwa [← det_to_matrix b, LinearEquiv.map_zero, det_zero]
#align linear_map.det_zero' LinearMap.det_zero'
+/- warning: linear_map.det_zero -> LinearMap.det_zero is a dubious translation:
+lean 3 declaration is
+ forall {𝕜 : Type.{u1}} [_inst_11 : Field.{u1} 𝕜] {M : Type.{u2}} [_inst_12 : AddCommGroup.{u2} M] [_inst_13 : Module.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12)], Eq.{succ u1} 𝕜 (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) => (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) -> 𝕜) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) (LinearMap.det.{u2, u1} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)) _inst_13) (OfNat.ofNat.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 0 (OfNat.mk.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 0 (Zero.zero.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (LinearMap.hasZero.{u1, u1, u2, u2} 𝕜 𝕜 M M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13 (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11)))))))))) (HPow.hPow.{u1, 0, u1} 𝕜 Nat 𝕜 (instHPow.{u1, 0} 𝕜 Nat (Monoid.Pow.{u1} 𝕜 (Ring.toMonoid.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))) (OfNat.ofNat.{u1} 𝕜 0 (OfNat.mk.{u1} 𝕜 0 (Zero.zero.{u1} 𝕜 (MulZeroClass.toHasZero.{u1} 𝕜 (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} 𝕜 (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11)))))))))) (FiniteDimensional.finrank.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) _inst_12 _inst_13))
+but is expected to have type
+ forall {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] {M : Type.{u1}} [_inst_12 : AddCommGroup.{u1} M] [_inst_13 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12)], Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13 (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13)))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_13) (OfNat.ofNat.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 0 (Zero.toOfNat0.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13 (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))))))) (HPow.hPow.{u2, 0, u2} 𝕜 Nat 𝕜 (instHPow.{u2, 0} 𝕜 Nat (Monoid.Pow.{u2} 𝕜 (MonoidWithZero.toMonoid.{u2} 𝕜 (Semiring.toMonoidWithZero.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))))))) (OfNat.ofNat.{u2} 𝕜 0 (Zero.toOfNat0.{u2} 𝕜 (CommMonoidWithZero.toZero.{u2} 𝕜 (CommGroupWithZero.toCommMonoidWithZero.{u2} 𝕜 (Semifield.toCommGroupWithZero.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))))) (FiniteDimensional.finrank.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) _inst_12 _inst_13))
+Case conversion may be inaccurate. Consider using '#align linear_map.det_zero LinearMap.det_zeroₓ'. -/
/-- In a finite-dimensional vector space, the zero map has determinant `1` in dimension `0`,
and `0` otherwise. We give a formula that also works in infinite dimension, where we define
the determinant to be `1`. -/
@@ -299,6 +435,12 @@ theorem det_zero {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCommGroup M] [Mod
simp only [← zero_smul 𝕜 (1 : M →ₗ[𝕜] M), det_smul, mul_one, MonoidHom.map_one]
#align linear_map.det_zero LinearMap.det_zero
+/- warning: linear_map.det_eq_one_of_subsingleton -> LinearMap.det_eq_one_of_subsingleton is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] [_inst_11 : Subsingleton.{succ u2} M] (f : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3), Eq.{succ u1} R (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) f) (OfNat.ofNat.{u1} R 1 (OfNat.mk.{u1} R 1 (One.one.{u1} R (AddMonoidWithOne.toOne.{u1} R (AddGroupWithOne.toAddMonoidWithOne.{u1} R (AddCommGroupWithOne.toAddGroupWithOne.{u1} R (Ring.toAddCommGroupWithOne.{u1} R (CommRing.toRing.{u1} R _inst_1))))))))
+but is expected to have type
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] [_inst_11 : Subsingleton.{succ u2} M] (f : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3)))))) (MulOneClass.toMul.{u1} R (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) f) (OfNat.ofNat.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) 1 (One.toOfNat1.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) (NonAssocRing.toOne.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) (Ring.toNonAssocRing.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) (CommRing.toRing.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => R) f) _inst_1)))))
+Case conversion may be inaccurate. Consider using '#align linear_map.det_eq_one_of_subsingleton LinearMap.det_eq_one_of_subsingletonₓ'. -/
theorem det_eq_one_of_subsingleton [Subsingleton M] (f : M →ₗ[R] M) : (f : M →ₗ[R] M).det = 1 :=
by
have b : Basis (Fin 0) R M := Basis.empty M
@@ -306,6 +448,12 @@ theorem det_eq_one_of_subsingleton [Subsingleton M] (f : M →ₗ[R] M) : (f : M
exact Matrix.det_isEmpty
#align linear_map.det_eq_one_of_subsingleton LinearMap.det_eq_one_of_subsingleton
+/- warning: linear_map.det_eq_one_of_finrank_eq_zero -> LinearMap.det_eq_one_of_finrank_eq_zero is a dubious translation:
+lean 3 declaration is
+ forall {𝕜 : Type.{u1}} [_inst_11 : Field.{u1} 𝕜] {M : Type.{u2}} [_inst_12 : AddCommGroup.{u2} M] [_inst_13 : Module.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12)], (Eq.{1} Nat (FiniteDimensional.finrank.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) _inst_12 _inst_13) (OfNat.ofNat.{0} Nat 0 (OfNat.mk.{0} Nat 0 (Zero.zero.{0} Nat Nat.hasZero)))) -> (forall (f : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13), Eq.{succ u1} 𝕜 (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) => (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) -> 𝕜) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) (AddCommGroup.toAddCommMonoid.{u2} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)))))))) (LinearMap.det.{u2, u1} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_11)) _inst_13) f) (OfNat.ofNat.{u1} 𝕜 1 (OfNat.mk.{u1} 𝕜 1 (One.one.{u1} 𝕜 (AddMonoidWithOne.toOne.{u1} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u1} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u1} 𝕜 (Ring.toAddCommGroupWithOne.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_11))))))))))
+but is expected to have type
+ forall {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] {M : Type.{u1}} [_inst_12 : AddCommGroup.{u1} M] [_inst_13 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12)], (Eq.{1} Nat (FiniteDimensional.finrank.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) _inst_12 _inst_13) (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0))) -> (forall (f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13)))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_12 _inst_13))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_12 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_13) f) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) (NonAssocRing.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) (DivisionRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) (Field.toDivisionRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) (AddCommGroup.toAddCommMonoid.{u1} M _inst_12) _inst_13 _inst_13) => 𝕜) f) _inst_11)))))))
+Case conversion may be inaccurate. Consider using '#align linear_map.det_eq_one_of_finrank_eq_zero LinearMap.det_eq_one_of_finrank_eq_zeroₓ'. -/
theorem det_eq_one_of_finrank_eq_zero {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCommGroup M]
[Module 𝕜 M] (h : FiniteDimensional.finrank 𝕜 M = 0) (f : M →ₗ[𝕜] M) :
(f : M →ₗ[𝕜] M).det = 1 := by
@@ -318,6 +466,12 @@ theorem det_eq_one_of_finrank_eq_zero {𝕜 : Type _} [Field 𝕜] {M : Type _}
exact Matrix.det_isEmpty
#align linear_map.det_eq_one_of_finrank_eq_zero LinearMap.det_eq_one_of_finrank_eq_zero
+/- warning: linear_map.det_conj -> LinearMap.det_conj is a dubious translation:
+lean 3 declaration is
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {N : Type.{u3}} [_inst_11 : AddCommGroup.{u3} N] [_inst_12 : Module.{u2, u3} A N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11)] (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (e : LinearEquiv.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12), Eq.{succ u2} A (coeFn.{max (succ u2) (succ u3), max (succ u3) (succ u2)} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.ring.{u2, u3} A N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_11 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.ring.{u2, u3} A N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_11 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) -> A) (MonoidHom.hasCoeToFun.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.ring.{u2, u3} A N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_11 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u3, u2} N _inst_11 A _inst_8 _inst_12) (LinearMap.comp.{u2, u2, u2, u3, u1, u3} A A A N M N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_9 _inst_12 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))) ((fun (a : Sort.{max (succ u1) (succ u3)}) (b : Sort.{max (succ u1) (succ u3)}) [self : HasLiftT.{max (succ u1) (succ u3), max (succ u1) (succ u3)} a b] => self.0) (LinearEquiv.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12) (LinearMap.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12) (HasLiftT.mk.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (LinearEquiv.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12) (LinearMap.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12) (CoeTCₓ.coe.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (LinearEquiv.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12) (LinearMap.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12) (coeBase.{max (succ u1) (succ u3), max (succ u1) (succ u3)} (LinearEquiv.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12) (LinearMap.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u1, u3} A A M N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))))) e) (LinearMap.comp.{u2, u2, u2, u3, u1, u1} A A A N M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))) f ((fun (a : Sort.{max (succ u3) (succ u1)}) (b : Sort.{max (succ u3) (succ u1)}) [self : HasLiftT.{max (succ u3) (succ u1), max (succ u3) (succ u1)} a b] => self.0) (LinearEquiv.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9) (LinearMap.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9) (HasLiftT.mk.{max (succ u3) (succ u1), max (succ u3) (succ u1)} (LinearEquiv.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9) (LinearMap.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9) (CoeTCₓ.coe.{max (succ u3) (succ u1), max (succ u3) (succ u1)} (LinearEquiv.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9) (LinearMap.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9) (coeBase.{max (succ u3) (succ u1), max (succ u3) (succ u1)} (LinearEquiv.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9) (LinearMap.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u3, u1} A A N M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))))) (LinearEquiv.symm.{u2, u2, u1, u3} A A M N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) e))))) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f)
+but is expected to have type
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {N : Type.{u3}} [_inst_11 : AddCommGroup.{u3} N] [_inst_12 : Module.{u2, u3} A N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11)] (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (e : LinearEquiv.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) => A) (LinearMap.comp.{u2, u2, u2, u3, u1, u3} A A A N M N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_9 _inst_12 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (LinearEquiv.toLinearMap.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12 e) (LinearMap.comp.{u2, u2, u2, u3, u1, u1} A A A N M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))) f (LinearEquiv.toLinearMap.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u3} A A M N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) e))))) (FunLike.coe.{max (succ u2) (succ u3), succ u3, succ u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.ring.{u2, u3} A N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_11 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) => A) _x) (MulHomClass.toFunLike.{max u2 u3, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.ring.{u2, u3} A N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_11 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulOneClass.toMul.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.ring.{u2, u3} A N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_11 _inst_12)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u3, u3, u2} (MonoidHom.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.ring.{u2, u3} A N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_11 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.ring.{u2, u3} A N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_11 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u2} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Ring.toNonAssocRing.{u3} (LinearMap.{u2, u2, u3, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) N N (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_12) (Module.End.ring.{u2, u3} A N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_11 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.det.{u3, u2} N _inst_11 A _inst_8 _inst_12) (LinearMap.comp.{u2, u2, u2, u3, u1, u3} A A A N M N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_12 _inst_9 _inst_12 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (LinearEquiv.toLinearMap.{u2, u2, u1, u3} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12 e) (LinearMap.comp.{u2, u2, u2, u3, u1, u1} A A A N M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomCompTriple.ids.{u2, u2} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))) f (LinearEquiv.toLinearMap.{u2, u2, u3, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u3} A A M N (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_11) _inst_9 _inst_12 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) e))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f)
+Case conversion may be inaccurate. Consider using '#align linear_map.det_conj LinearMap.det_conjₓ'. -/
/-- Conjugating a linear map by a linear equiv does not change its determinant. -/
@[simp]
theorem det_conj {N : Type _} [AddCommGroup N] [Module A N] (f : M →ₗ[A] M) (e : M ≃ₗ[A] N) :
@@ -341,6 +495,12 @@ theorem det_conj {N : Type _} [AddCommGroup N] [Module A N] (f : M →ₗ[A] M)
simp only [coe_det, H, H', Pi.one_apply, dif_neg, not_false_iff]
#align linear_map.det_conj LinearMap.det_conj
+/- warning: linear_map.is_unit_det -> LinearMap.isUnit_det is a dubious translation:
+lean 3 declaration is
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_11 : CommRing.{u2} A] [_inst_12 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12), (IsUnit.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.monoid.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) f) -> (IsUnit.{u2} A (Ring.toMonoid.{u2} A (CommRing.toRing.{u2} A _inst_11)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_11 _inst_12) f))
+but is expected to have type
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_11 : CommRing.{u2} A] [_inst_12 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12), (IsUnit.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.monoid.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) f) -> (IsUnit.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) f) (MonoidWithZero.toMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) f) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) f) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) f) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) f) _inst_11)))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) _inst_2 _inst_12)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_11)) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_11)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_11 _inst_12) f))
+Case conversion may be inaccurate. Consider using '#align linear_map.is_unit_det LinearMap.isUnit_detₓ'. -/
/-- If a linear map is invertible, so is its determinant. -/
theorem isUnit_det {A : Type _} [CommRing A] [Module A M] (f : M →ₗ[A] M) (hf : IsUnit f) :
IsUnit f.det := by
@@ -350,6 +510,12 @@ theorem isUnit_det {A : Type _} [CommRing A] [Module A M] (f : M →ₗ[A] M) (h
exact isUnit_of_mul_eq_one _ _ this
#align linear_map.is_unit_det LinearMap.isUnit_det
+/- warning: linear_map.finite_dimensional_of_det_ne_one -> LinearMap.finiteDimensional_of_det_ne_one is a dubious translation:
+lean 3 declaration is
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12), (Ne.{succ u2} 𝕜 (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) => (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) -> 𝕜) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} 𝕜 1 (OfNat.mk.{u2} 𝕜 1 (One.one.{u2} 𝕜 (AddMonoidWithOne.toOne.{u2} 𝕜 (AddGroupWithOne.toAddMonoidWithOne.{u2} 𝕜 (AddCommGroupWithOne.toAddGroupWithOne.{u2} 𝕜 (Ring.toAddCommGroupWithOne.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11)))))))))) -> (FiniteDimensional.{u2, u1} 𝕜 M (Field.toDivisionRing.{u2} 𝕜 _inst_11) _inst_2 _inst_12)
+but is expected to have type
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12), (Ne.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12)))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (NonAssocRing.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (DivisionRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Field.toDivisionRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) _inst_11))))))) -> (FiniteDimensional.{u2, u1} 𝕜 M (Field.toDivisionRing.{u2} 𝕜 _inst_11) _inst_2 _inst_12)
+Case conversion may be inaccurate. Consider using '#align linear_map.finite_dimensional_of_det_ne_one LinearMap.finiteDimensional_of_det_ne_oneₓ'. -/
/-- If a linear map has determinant different from `1`, then the space is finite-dimensional. -/
theorem finiteDimensional_of_det_ne_one {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] (f : M →ₗ[𝕜] M)
(hf : f.det ≠ 1) : FiniteDimensional 𝕜 M :=
@@ -363,6 +529,12 @@ theorem finiteDimensional_of_det_ne_one {𝕜 : Type _} [Field 𝕜] [Module
exact hf.elim
#align linear_map.finite_dimensional_of_det_ne_one LinearMap.finiteDimensional_of_det_ne_one
+/- warning: linear_map.range_lt_top_of_det_eq_zero -> LinearMap.range_lt_top_of_det_eq_zero is a dubious translation:
+lean 3 declaration is
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12}, (Eq.{succ u2} 𝕜 (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) => (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) -> 𝕜) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} 𝕜 0 (OfNat.mk.{u2} 𝕜 0 (Zero.zero.{u2} 𝕜 (MulZeroClass.toHasZero.{u2} 𝕜 (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} 𝕜 (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))))))))) -> (LT.lt.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Preorder.toLT.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteSemilatticeInf.toPartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteLattice.toCompleteSemilatticeInf.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.completeLattice.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (LinearMap.range.{u2, u2, u1, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (LinearMap.semilinearMapClass.{u2, u2, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11)))))) (RingHomSurjective.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11)))) f) (Top.top.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.hasTop.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))
+but is expected to have type
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12}, (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12)))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommMonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommGroupWithZero.toCommMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Semifield.toCommGroupWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Field.toSemifield.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) _inst_11))))))) -> (LT.lt.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Preorder.toLT.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.completeLattice.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (LinearMap.range.{u2, u2, u1, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (LinearMap.instSemilinearMapClassLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11)))))) (RingHomSurjective.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11)))) f) (Top.top.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.instTopSubmodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)))
+Case conversion may be inaccurate. Consider using '#align linear_map.range_lt_top_of_det_eq_zero LinearMap.range_lt_top_of_det_eq_zeroₓ'. -/
/-- If the determinant of a map vanishes, then the map is not onto. -/
theorem range_lt_top_of_det_eq_zero {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] {f : M →ₗ[𝕜] M}
(hf : f.det = 0) : f.range < ⊤ :=
@@ -373,6 +545,12 @@ theorem range_lt_top_of_det_eq_zero {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M]
exact isUnit_iff_ne_zero.1 (f.is_unit_det hf)
#align linear_map.range_lt_top_of_det_eq_zero LinearMap.range_lt_top_of_det_eq_zero
+/- warning: linear_map.bot_lt_ker_of_det_eq_zero -> LinearMap.bot_lt_ker_of_det_eq_zero is a dubious translation:
+lean 3 declaration is
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12}, (Eq.{succ u2} 𝕜 (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) => (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) -> 𝕜) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} 𝕜 0 (OfNat.mk.{u2} 𝕜 0 (Zero.zero.{u2} 𝕜 (MulZeroClass.toHasZero.{u2} 𝕜 (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} 𝕜 (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))))))))) -> (LT.lt.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Preorder.toLT.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteSemilatticeInf.toPartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteLattice.toCompleteSemilatticeInf.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.completeLattice.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (Bot.bot.{u1} (Submodule.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.hasBot.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)) (LinearMap.ker.{u2, u2, u1, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (LinearMap.semilinearMapClass.{u2, u2, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11)))))) f))
+but is expected to have type
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_11 : Field.{u2} 𝕜] [_inst_12 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {f : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12}, (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12)))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) _inst_2 _inst_12))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)) _inst_12) f) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) 0 (Zero.toOfNat0.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommMonoidWithZero.toZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (CommGroupWithZero.toCommMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Semifield.toCommGroupWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) (Field.toSemifield.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_11)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) => 𝕜) f) _inst_11))))))) -> (LT.lt.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Preorder.toLT.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.completeLattice.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12))))) (Bot.bot.{u1} (Submodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12) (Submodule.instBotSubmodule.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12)) (LinearMap.ker.{u2, u2, u1, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12) (LinearMap.instSemilinearMapClassLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_11))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_12 _inst_12 (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_11)))))) f))
+Case conversion may be inaccurate. Consider using '#align linear_map.bot_lt_ker_of_det_eq_zero LinearMap.bot_lt_ker_of_det_eq_zeroₓ'. -/
/-- If the determinant of a map vanishes, then the map is not injective. -/
theorem bot_lt_ker_of_det_eq_zero {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] {f : M →ₗ[𝕜] M}
(hf : f.det = 0) : ⊥ < f.ker :=
@@ -387,37 +565,79 @@ end LinearMap
namespace LinearEquiv
+/- warning: linear_equiv.det -> LinearEquiv.det is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)], MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))
+but is expected to have type
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)], MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u1} R (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))))
+Case conversion may be inaccurate. Consider using '#align linear_equiv.det LinearEquiv.detₓ'. -/
/-- On a `linear_equiv`, the domain of `linear_map.det` can be promoted to `Rˣ`. -/
protected def det : (M ≃ₗ[R] M) →* Rˣ :=
(Units.map (LinearMap.det : (M →ₗ[R] M) →* R)).comp
(LinearMap.GeneralLinearGroup.generalLinearEquiv R M).symm.toMonoidHom
#align linear_equiv.det LinearEquiv.det
+/- warning: linear_equiv.coe_det -> LinearEquiv.coe_det is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (f : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3), Eq.{succ u1} R ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (HasLiftT.mk.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (CoeTCₓ.coe.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (coeBase.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (Units.hasCoe.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) f)) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (HasLiftT.mk.{succ u2, succ u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (CoeTCₓ.coe.{succ u2, succ u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (coeBase.{succ u2, succ u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.LinearMap.hasCoe.{u1, u1, u2, u2} R R M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))))) f))
+but is expected to have type
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 f)) (Units.val.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3)))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 f))
+Case conversion may be inaccurate. Consider using '#align linear_equiv.coe_det LinearEquiv.coe_detₓ'. -/
@[simp]
theorem coe_det (f : M ≃ₗ[R] M) : ↑f.det = LinearMap.det (f : M →ₗ[R] M) :=
rfl
#align linear_equiv.coe_det LinearEquiv.coe_det
+/- warning: linear_equiv.coe_inv_det -> LinearEquiv.coe_inv_det is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (f : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3), Eq.{succ u1} R ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (HasLiftT.mk.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (CoeTCₓ.coe.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (coeBase.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (Units.hasCoe.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Inv.inv.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Units.hasInv.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) f))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) ((fun (a : Type.{u2}) (b : Type.{u2}) [self : HasLiftT.{succ u2, succ u2} a b] => self.0) (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (HasLiftT.mk.{succ u2, succ u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (CoeTCₓ.coe.{succ u2, succ u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (coeBase.{succ u2, succ u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.LinearMap.hasCoe.{u1, u1, u2, u2} R R M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))))) (LinearEquiv.symm.{u1, u1, u2, u2} R R M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) f)))
+but is expected to have type
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (LinearEquiv.symm.{u2, u2, u1, u1} R R M M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) f))) (Units.val.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (Inv.inv.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) f) (Units.instInv.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) f))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3)))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (LinearEquiv.symm.{u2, u2, u1, u1} R R M M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) f)))
+Case conversion may be inaccurate. Consider using '#align linear_equiv.coe_inv_det LinearEquiv.coe_inv_detₓ'. -/
@[simp]
theorem coe_inv_det (f : M ≃ₗ[R] M) : ↑f.det⁻¹ = LinearMap.det (f.symm : M →ₗ[R] M) :=
rfl
#align linear_equiv.coe_inv_det LinearEquiv.coe_inv_det
+/- warning: linear_equiv.det_refl -> LinearEquiv.det_refl is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)], Eq.{succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) (LinearEquiv.refl.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) (OfNat.ofNat.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) 1 (OfNat.mk.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) 1 (One.one.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (MulOneClass.toHasOne.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))))))
+but is expected to have type
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)], Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) (LinearEquiv.refl.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (InvOneClass.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (DivInvOneMonoid.toInvOneClass.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (DivisionMonoid.toDivInvOneMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (DivisionCommMonoid.toDivisionMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (CommGroup.toDivisionCommMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (LinearEquiv.refl.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (Units.instCommGroupUnitsToMonoid.{u2} R (CommRing.toCommMonoid.{u2} R _inst_1)))))))))
+Case conversion may be inaccurate. Consider using '#align linear_equiv.det_refl LinearEquiv.det_reflₓ'. -/
@[simp]
theorem det_refl : (LinearEquiv.refl R M).det = 1 :=
Units.ext <| LinearMap.det_id
#align linear_equiv.det_refl LinearEquiv.det_refl
+/- warning: linear_equiv.det_trans -> LinearEquiv.det_trans is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (f : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (g : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3), Eq.{succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) (LinearEquiv.trans.{u1, u1, u1, u2, u2, u2} R R R M M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomCompTriple.right_ids.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (RingHomCompTriple.right_ids.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (LinearEquiv.det._proof_2.{u1} R _inst_1) f g)) (HMul.hMul.{u1, u1, u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (instHMul.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (MulOneClass.toHasMul.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) g) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) f))
+but is expected to have type
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (g : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (LinearEquiv.trans.{u2, u2, u2, u1, u1, u1} R R R M M M (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)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 _inst_3 (RingHom.id.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHom.id.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHom.id.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (RingHomCompTriple.ids.{u2, 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))))) (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))) (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))) (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))) f g)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) (LinearEquiv.trans.{u2, u2, u2, u1, u1, u1} R R R M M M (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)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 _inst_3 (RingHom.id.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHom.id.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHom.id.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (RingHomCompTriple.ids.{u2, 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))))) (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))) (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))) (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))) f g)) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) g) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) f) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) g) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) g) (MulOneClass.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) g) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))))) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) g) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) f))
+Case conversion may be inaccurate. Consider using '#align linear_equiv.det_trans LinearEquiv.det_transₓ'. -/
@[simp]
theorem det_trans (f g : M ≃ₗ[R] M) : (f.trans g).det = g.det * f.det :=
map_mul _ g f
#align linear_equiv.det_trans LinearEquiv.det_trans
+/- warning: linear_equiv.det_symm -> LinearEquiv.det_symm is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (f : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3), Eq.{succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) (LinearEquiv.symm.{u1, u1, u2, u2} R R M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) f)) (Inv.inv.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Units.hasInv.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) f))
+but is expected to have type
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (LinearEquiv.symm.{u2, u2, u1, u1} R R M M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) f)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) (LinearEquiv.symm.{u2, u2, u1, u1} R R M M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) f)) (FunLike.coe.{max (succ u1) (succ u2), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (a : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) a) (MulHomClass.toFunLike.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u1, u2} (MonoidHom.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (LinearEquiv.det.{u2, u1} R _inst_1 M _inst_2 _inst_3) (Inv.inv.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (InvOneClass.toInv.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivInvOneMonoid.toInvOneClass.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (DivisionMonoid.toDivInvOneMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Group.toDivisionMonoid.{u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) f))
+Case conversion may be inaccurate. Consider using '#align linear_equiv.det_symm LinearEquiv.det_symmₓ'. -/
@[simp]
theorem det_symm (f : M ≃ₗ[R] M) : f.symm.det = f.det⁻¹ :=
map_inv _ f
#align linear_equiv.det_symm LinearEquiv.det_symm
+/- warning: linear_equiv.det_conj -> LinearEquiv.det_conj is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] [_inst_5 : Module.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] (f : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (e : LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5), Eq.{succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (coeFn.{max (succ u1) (succ u3), max (succ u3) (succ u1)} (MonoidHom.{u3, u1} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u3, u1} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u3, u1} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u3} (LinearEquiv.{u1, u1, u3, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u3} R _inst_1 M' _inst_4 _inst_5) (LinearEquiv.trans.{u1, u1, u1, u3, u2, u3} R R R M' M M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomCompTriple.right_ids.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (RingHomCompTriple.right_ids.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (LinearEquiv.det._proof_2.{u1} R _inst_1) (LinearEquiv.trans.{u1, u1, u1, u3, u2, u2} R R R M' M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomCompTriple.right_ids.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (RingHomCompTriple.right_ids.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (LinearEquiv.symm.{u1, u1, u2, u3} R R M M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) e) f) e)) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (fun (_x : MonoidHom.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) => (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (MonoidHom.hasCoeToFun.{u2, u1} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det._proof_1.{u1} R _inst_1) (LinearEquiv.det._proof_2.{u1} R _inst_1) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.mulOneClass.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.det.{u1, u2} R _inst_1 M _inst_2 _inst_3) f)
+but is expected to have type
+ forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u1}} [_inst_4 : AddCommGroup.{u1} M'] [_inst_5 : Module.{u3, u1} R M' (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4)] (f : LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (e : LinearEquiv.{u3, u3, u2, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5), Eq.{succ u3} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) => Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (LinearEquiv.trans.{u3, u3, u3, u1, u2, u1} R R R M' M M' (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)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_3 _inst_5 (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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)))) (RingHomCompTriple.ids.{u3, u3} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (RingHomCompTriple.ids.{u3, u3} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) (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))) (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.trans.{u3, u3, u3, u1, u2, u2} R R R M' M M (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)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHomCompTriple.ids.{u3, u3} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (RingHomCompTriple.ids.{u3, u3} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) (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))) (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.symm.{u3, u3, u2, u1} R R M M' (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) e) f) e)) (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (MonoidHom.{u1, u3} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (fun (_x : LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) => Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u1 u3, u1, u3} (MonoidHom.{u1, u3} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (MulOneClass.toMul.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5))))) (MulOneClass.toMul.{u3} (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u1 u3, u1, u3} (MonoidHom.{u1, u3} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u3} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (DivInvMonoid.toMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (Group.toDivInvMonoid.{u1} (LinearEquiv.{u3, u3, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_5) (LinearEquiv.automorphismGroup.{u3, u1} R M' (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))))) (LinearEquiv.det.{u3, u1} R _inst_1 M' _inst_4 _inst_5) (LinearEquiv.trans.{u3, u3, u3, u1, u2, u1} R R R M' M M' (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)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 _inst_3 _inst_5 (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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)))) (RingHomCompTriple.ids.{u3, u3} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (RingHomCompTriple.ids.{u3, u3} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) (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))) (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.trans.{u3, u3, u3, u1, u2, u2} R R R M' M M (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)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHomCompTriple.ids.{u3, u3} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (RingHomCompTriple.ids.{u3, u3} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) (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))) (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.symm.{u3, u3, u2, u1} R R M M' (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) e) f) e)) (FunLike.coe.{max (succ u2) (succ u3), succ u2, succ u3} (MonoidHom.{u2, u3} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) _x) (MulHomClass.toFunLike.{max u2 u3, u2, u3} (MonoidHom.{u2, u3} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (MulOneClass.toMul.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3))))) (MulOneClass.toMul.{u3} (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u3, u2, u3} (MonoidHom.{u2, u3} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))) (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (MonoidHom.monoidHomClass.{u2, u3} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Monoid.toMulOneClass.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (DivInvMonoid.toMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Group.toDivInvMonoid.{u2} (LinearEquiv.{u3, u3, u2, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (LinearEquiv.automorphismGroup.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (Units.instMulOneClassUnits.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))))) (LinearEquiv.det.{u3, u2} R _inst_1 M _inst_2 _inst_3) f)
+Case conversion may be inaccurate. Consider using '#align linear_equiv.det_conj LinearEquiv.det_conjₓ'. -/
/-- Conjugating a linear equiv by a linear equiv does not change its determinant. -/
@[simp]
theorem det_conj (f : M ≃ₗ[R] M) (e : M ≃ₗ[R] M') : ((e.symm.trans f).trans e).det = f.det := by
@@ -426,18 +646,36 @@ theorem det_conj (f : M ≃ₗ[R] M) (e : M ≃ₗ[R] M') : ((e.symm.trans f).tr
end LinearEquiv
+/- warning: linear_equiv.det_mul_det_symm -> LinearEquiv.det_mul_det_symm is a dubious translation:
+lean 3 declaration is
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} A (HMul.hMul.{u2, u2, u2} A A A (instHMul.{u2} A (Distrib.toHasMul.{u2} A (Ring.toDistrib.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (HasLiftT.mk.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CoeTCₓ.coe.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (coeBase.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))))) f)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (HasLiftT.mk.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CoeTCₓ.coe.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (coeBase.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))))) (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f)))) (OfNat.ofNat.{u2} A 1 (OfNat.mk.{u2} A 1 (One.one.{u2} A (AddMonoidWithOne.toOne.{u2} A (AddGroupWithOne.toAddMonoidWithOne.{u2} A (AddCommGroupWithOne.toAddGroupWithOne.{u2} A (Ring.toAddCommGroupWithOne.{u2} A (CommRing.toRing.{u2} A _inst_8))))))))
+but is expected to have type
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (NonUnitalNonAssocRing.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (NonAssocRing.toNonUnitalNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) _inst_8))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f)))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (NonAssocRing.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) _inst_8)))))
+Case conversion may be inaccurate. Consider using '#align linear_equiv.det_mul_det_symm LinearEquiv.det_mul_det_symmₓ'. -/
/-- The determinants of a `linear_equiv` and its inverse multiply to 1. -/
@[simp]
theorem LinearEquiv.det_mul_det_symm {A : Type _} [CommRing A] [Module A M] (f : M ≃ₗ[A] M) :
(f : M →ₗ[A] M).det * (f.symm : M →ₗ[A] M).det = 1 := by simp [← LinearMap.det_comp]
#align linear_equiv.det_mul_det_symm LinearEquiv.det_mul_det_symm
+/- warning: linear_equiv.det_symm_mul_det -> LinearEquiv.det_symm_mul_det is a dubious translation:
+lean 3 declaration is
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} A (HMul.hMul.{u2, u2, u2} A A A (instHMul.{u2} A (Distrib.toHasMul.{u2} A (Ring.toDistrib.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (HasLiftT.mk.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CoeTCₓ.coe.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (coeBase.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))))) (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f))) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (HasLiftT.mk.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CoeTCₓ.coe.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (coeBase.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))))) f))) (OfNat.ofNat.{u2} A 1 (OfNat.mk.{u2} A 1 (One.one.{u2} A (AddMonoidWithOne.toOne.{u2} A (AddGroupWithOne.toAddMonoidWithOne.{u2} A (AddCommGroupWithOne.toAddGroupWithOne.{u2} A (Ring.toAddCommGroupWithOne.{u2} A (CommRing.toRing.{u2} A _inst_8))))))))
+but is expected to have type
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f))) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f))) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f))) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f))) (NonUnitalNonAssocRing.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f))) (NonAssocRing.toNonUnitalNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f))) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f))) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f))) _inst_8))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f))) (OfNat.ofNat.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f))) 1 (One.toOfNat1.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f))) (NonAssocRing.toOne.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f))) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f))) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) f))) _inst_8)))))
+Case conversion may be inaccurate. Consider using '#align linear_equiv.det_symm_mul_det LinearEquiv.det_symm_mul_detₓ'. -/
/-- The determinants of a `linear_equiv` and its inverse multiply to 1. -/
@[simp]
theorem LinearEquiv.det_symm_mul_det {A : Type _} [CommRing A] [Module A M] (f : M ≃ₗ[A] M) :
(f.symm : M →ₗ[A] M).det * (f : M →ₗ[A] M).det = 1 := by simp [← LinearMap.det_comp]
#align linear_equiv.det_symm_mul_det LinearEquiv.det_symm_mul_det
+/- warning: linear_equiv.is_unit_det -> LinearEquiv.isUnit_det is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] [_inst_5 : Module.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] {ι : Type.{u4}} [_inst_6 : DecidableEq.{succ u4} ι] [_inst_7 : Fintype.{u4} ι] (f : LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (v : Basis.{u4, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (v' : Basis.{u4, u1, u3} ι R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5), IsUnit.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Matrix.det.{u1, u4} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (coeFn.{max (succ (max u2 u3)) (succ (max u4 u1)), max (succ (max u2 u3)) (succ (max u4 u1))} (LinearEquiv.{u1, u1, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.toMatrix._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.toMatrix._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearMap.toMatrix._proof_3.{u1, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (_x : LinearEquiv.{u1, u1, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.toMatrix._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.toMatrix._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearMap.toMatrix._proof_3.{u1, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) -> (Matrix.{u4, u4, u1} ι ι R)) (LinearEquiv.hasCoeToFun.{u1, u1, max u2 u3, max u4 u1} R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearMap.toMatrix._proof_3.{u1, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.toMatrix._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.toMatrix._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.toMatrix.{u1, u4, u4, u2, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 v v') ((fun (a : Sort.{max (succ u2) (succ u3)}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{max (succ u2) (succ u3), max (succ u2) (succ u3)} a b] => self.0) (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (HasLiftT.mk.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (CoeTCₓ.coe.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (coeBase.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearEquiv.LinearMap.hasCoe.{u1, u1, u2, u3} R R M M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))))) f)))
+but is expected to have type
+ forall {R : Type.{u4}} [_inst_1 : CommRing.{u4} R] {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] [_inst_3 : Module.{u4, u3} R M (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] {M' : Type.{u2}} [_inst_4 : AddCommGroup.{u2} M'] [_inst_5 : Module.{u4, u2} R M' (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] (f : LinearEquiv.{u4, u4, u3, u2} R R (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (RingHom.id.{u4} R (NonAssocRing.toNonAssocSemiring.{u4} R (Ring.toNonAssocRing.{u4} R (CommRing.toRing.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (v : Basis.{u1, u4, u3} ι R M (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (v' : Basis.{u1, u4, u2} ι R M' (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5), IsUnit.{u4} R (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)))) (Matrix.det.{u4, u1} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (FunLike.coe.{max (max (max (succ u4) (succ u3)) (succ u2)) (succ u1), max (succ u3) (succ u2), max (succ u4) (succ u1)} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (fun (_x : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) => Matrix.{u1, u1, u4} ι ι R) _x) (SMulHomClass.toFunLike.{max (max (max u4 u3) u2) u1, u4, max u3 u2, max u4 u1} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (SMulZeroClass.toSMul.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toZero.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Module.toDistribMulAction.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))))))) (SMulZeroClass.toSMul.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (AddMonoid.toZero.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (AddMonoid.toAddZeroClass.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (Module.toDistribMulAction.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max (max u4 u3) u2) u1, u4, max u3 u2, max u4 u1} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (Module.toDistribMulAction.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5))))) (Module.toDistribMulAction.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (SemilinearMapClass.distribMulActionHomClass.{u4, max u3 u2, max u4 u1, max (max (max u4 u3) u2) u1} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (SemilinearEquivClass.instSemilinearMapClass.{u4, u4, max u3 u2, max u4 u1, max (max (max u4 u3) u2) u1} R R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u4, u4, max u3 u2, max u4 u1} R R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (LinearMap.toMatrix.{u4, u1, u1, u3, u2} R (CommRing.toCommSemiring.{u4} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 v v') (LinearEquiv.toLinearMap.{u4, u4, u3, u2} R R (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (RingHom.id.{u4} R (NonAssocRing.toNonAssocSemiring.{u4} R (Ring.toNonAssocRing.{u4} R (CommRing.toRing.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 f)))
+Case conversion may be inaccurate. Consider using '#align linear_equiv.is_unit_det LinearEquiv.isUnit_detₓ'. -/
-- Cannot be stated using `linear_map.det` because `f` is not an endomorphism.
theorem LinearEquiv.isUnit_det (f : M ≃ₗ[R] M') (v : Basis ι R M) (v' : Basis ι R M') :
IsUnit (LinearMap.toMatrix v v' f).det :=
@@ -446,18 +684,36 @@ theorem LinearEquiv.isUnit_det (f : M ≃ₗ[R] M') (v : Basis ι R M) (v' : Bas
simpa using (LinearMap.toMatrix_comp v v' v f.symm f).symm
#align linear_equiv.is_unit_det LinearEquiv.isUnit_det
+/- warning: linear_equiv.is_unit_det' -> LinearEquiv.isUnit_det' is a dubious translation:
+lean 3 declaration is
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), IsUnit.{u2} A (Ring.toMonoid.{u2} A (CommRing.toRing.{u2} A _inst_8)) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) => (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (HasLiftT.mk.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CoeTCₓ.coe.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (coeBase.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))))))) f))
+but is expected to have type
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), IsUnit.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (MonoidWithZero.toMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) _inst_8)))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHom.id.{u2} A (Semiring.toNonAssocSemiring.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) (RingHomInvPair.ids.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f))
+Case conversion may be inaccurate. Consider using '#align linear_equiv.is_unit_det' LinearEquiv.isUnit_det'ₓ'. -/
/-- Specialization of `linear_equiv.is_unit_det` -/
theorem LinearEquiv.isUnit_det' {A : Type _} [CommRing A] [Module A M] (f : M ≃ₗ[A] M) :
IsUnit (LinearMap.det (f : M →ₗ[A] M)) :=
isUnit_of_mul_eq_one _ _ f.det_mul_det_symm
#align linear_equiv.is_unit_det' LinearEquiv.isUnit_det'
+/- warning: linear_equiv.det_coe_symm -> LinearEquiv.det_coe_symm is a dubious translation:
+lean 3 declaration is
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_8 : Field.{u2} 𝕜] [_inst_9 : Module.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} 𝕜 (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) => (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> 𝕜) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)) _inst_9) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (HasLiftT.mk.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CoeTCₓ.coe.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (coeBase.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))))))) (LinearEquiv.symm.{u2, u2, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) f))) (Inv.inv.{u2} 𝕜 (DivInvMonoid.toHasInv.{u2} 𝕜 (DivisionRing.toDivInvMonoid.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (coeFn.{max (succ u2) (succ u1), max (succ u1) (succ u2)} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (fun (_x : MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) => (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> 𝕜) (MonoidHom.hasCoeToFun.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)) _inst_9) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (HasLiftT.mk.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (CoeTCₓ.coe.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (coeBase.{succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u2, u2, u1, u1} 𝕜 𝕜 M M (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (Ring.toSemiring.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8)))))))) f)))
+but is expected to have type
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {𝕜 : Type.{u2}} [_inst_8 : Field.{u2} 𝕜] [_inst_9 : Module.{u2, u1} 𝕜 M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (f : LinearEquiv.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => 𝕜) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) f))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)) _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (LinearEquiv.symm.{u2, u2, u1, u1} 𝕜 𝕜 M M (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) f))) (Inv.inv.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => 𝕜) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) (Field.toInv.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => 𝕜) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)) _inst_8) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => 𝕜) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} 𝕜 (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))) (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8))))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) 𝕜 (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} 𝕜 M (Ring.toSemiring.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (CommRing.toRing.{u2} 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)))))))))) (LinearMap.det.{u1, u2} M _inst_2 𝕜 (EuclideanDomain.toCommRing.{u2} 𝕜 (Field.toEuclideanDomain.{u2} 𝕜 _inst_8)) _inst_9) (LinearEquiv.toLinearMap.{u2, u2, u1, u1} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))) (RingHom.id.{u2} 𝕜 (NonAssocRing.toNonAssocSemiring.{u2} 𝕜 (Ring.toNonAssocRing.{u2} 𝕜 (DivisionRing.toRing.{u2} 𝕜 (Field.toDivisionRing.{u2} 𝕜 _inst_8))))) (RingHom.id.{u2} 𝕜 (Semiring.toNonAssocSemiring.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u2} 𝕜 (DivisionSemiring.toSemiring.{u2} 𝕜 (Semifield.toDivisionSemiring.{u2} 𝕜 (Field.toSemifield.{u2} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 f)))
+Case conversion may be inaccurate. Consider using '#align linear_equiv.det_coe_symm LinearEquiv.det_coe_symmₓ'. -/
/-- The determinant of `f.symm` is the inverse of that of `f` when `f` is a linear equiv. -/
theorem LinearEquiv.det_coe_symm {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] (f : M ≃ₗ[𝕜] M) :
(f.symm : M →ₗ[𝕜] M).det = (f : M →ₗ[𝕜] M).det⁻¹ := by
field_simp [IsUnit.ne_zero f.is_unit_det']
#align linear_equiv.det_coe_symm LinearEquiv.det_coe_symm
+/- warning: linear_equiv.of_is_unit_det -> LinearEquiv.ofIsUnitDet is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] [_inst_5 : Module.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] {ι : Type.{u4}} [_inst_6 : DecidableEq.{succ u4} ι] [_inst_7 : Fintype.{u4} ι] {f : LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5} {v : Basis.{u4, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3} {v' : Basis.{u4, u1, u3} ι R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5}, (IsUnit.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Matrix.det.{u1, u4} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (coeFn.{max (succ (max u2 u3)) (succ (max u4 u1)), max (succ (max u2 u3)) (succ (max u4 u1))} (LinearEquiv.{u1, u1, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_1.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_2.{u1} R _inst_1) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearEquiv.ofIsUnitDet._proof_3.{u1, u3} R _inst_1 M' _inst_4 _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (_x : LinearEquiv.{u1, u1, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_1.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_2.{u1} R _inst_1) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearEquiv.ofIsUnitDet._proof_3.{u1, u3} R _inst_1 M' _inst_4 _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) -> (Matrix.{u4, u4, u1} ι ι R)) (LinearEquiv.hasCoeToFun.{u1, u1, max u2 u3, max u4 u1} R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearEquiv.ofIsUnitDet._proof_3.{u1, u3} R _inst_1 M' _inst_4 _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_4.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_5.{u1} R _inst_1)) (LinearMap.toMatrix.{u1, u4, u4, u2, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 v v') f))) -> (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_6.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_7.{u1} R _inst_1) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5)
+but is expected to have type
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] [_inst_5 : Module.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] {ι : Type.{u4}} [_inst_6 : DecidableEq.{succ u4} ι] [_inst_7 : Fintype.{u4} ι] {f : LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5} {v : Basis.{u4, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3} {v' : Basis.{u4, u1, u3} ι R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5}, (IsUnit.{u1} R (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Matrix.det.{u1, u4} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (FunLike.coe.{max (max (max (succ u1) (succ u2)) (succ u3)) (succ u4), max (succ u2) (succ u3), max (succ u1) (succ u4)} (LinearEquiv.{u1, u1, max u3 u2, max u1 u4} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (fun (_x : LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) => Matrix.{u4, u4, u1} ι ι R) _x) (SMulHomClass.toFunLike.{max (max (max u1 u2) u3) u4, u1, max u2 u3, max u1 u4} (LinearEquiv.{u1, u1, max u3 u2, max u1 u4} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (SMulZeroClass.toSMul.{u1, max u2 u3} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toZero.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u1, max u2 u3} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u1, max u2 u3} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Module.toDistribMulAction.{u1, max u2 u3} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))))))) (SMulZeroClass.toSMul.{u1, max u1 u4} R (Matrix.{u4, u4, u1} ι ι R) (AddMonoid.toZero.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u1, max u1 u4} R (Matrix.{u4, u4, u1} ι ι R) (AddMonoid.toAddZeroClass.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (AddCommMonoid.toAddMonoid.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u1, max u1 u4} R (Matrix.{u4, u4, u1} ι ι R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (Module.toDistribMulAction.{u1, max u1 u4} R (Matrix.{u4, u4, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max (max u1 u2) u3) u4, u1, max u2 u3, max u1 u4} (LinearEquiv.{u1, u1, max u3 u2, max u1 u4} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u2 u3} (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (AddCommMonoid.toAddMonoid.{max u1 u4} (Matrix.{u4, u4, u1} ι ι R) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))))) (Module.toDistribMulAction.{u1, max u2 u3} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5))))) (Module.toDistribMulAction.{u1, max u1 u4} R (Matrix.{u4, u4, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (SemilinearMapClass.distribMulActionHomClass.{u1, max u2 u3, max u1 u4, max (max (max u1 u2) u3) u4} R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearEquiv.{u1, u1, max u3 u2, max u1 u4} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (SemilinearEquivClass.instSemilinearMapClass.{u1, u1, max u2 u3, max u1 u4, max (max (max u1 u2) u3) u4} R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearEquiv.{u1, u1, max u3 u2, max u1 u4} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u1, u1, max u2 u3, max u1 u4} R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (smulCommClass_self.{u1, u3} R M' (CommSemiring.toCommMonoid.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (MulActionWithZero.toMulAction.{u1, u3} R M' (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (AddMonoid.toZero.{u3} M' (AddCommMonoid.toAddMonoid.{u3} M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4))) (Module.toMulActionWithZero.{u1, u3} R M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)))) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))))) (LinearMap.toMatrix.{u1, u4, u4, u2, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 v v') f))) -> (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5)
+Case conversion may be inaccurate. Consider using '#align linear_equiv.of_is_unit_det LinearEquiv.ofIsUnitDetₓ'. -/
/-- Builds a linear equivalence from a linear map whose determinant in some bases is a unit. -/
@[simps]
def LinearEquiv.ofIsUnitDet {f : M →ₗ[R] M'} {v : Basis ι R M} {v' : Basis ι R M'}
@@ -482,6 +738,12 @@ def LinearEquiv.ofIsUnitDet {f : M →ₗ[R] M'} {v : Basis ι R M} {v' : Basis
#align linear_equiv.of_is_unit_det LinearEquiv.ofIsUnitDet
+/- warning: linear_equiv.coe_of_is_unit_det -> LinearEquiv.coe_ofIsUnitDet is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] [_inst_5 : Module.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] {ι : Type.{u4}} [_inst_6 : DecidableEq.{succ u4} ι] [_inst_7 : Fintype.{u4} ι] {f : LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5} {v : Basis.{u4, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3} {v' : Basis.{u4, u1, u3} ι R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5} (h : IsUnit.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Matrix.det.{u1, u4} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (coeFn.{max (succ (max u2 u3)) (succ (max u4 u1)), max (succ (max u2 u3)) (succ (max u4 u1))} (LinearEquiv.{u1, u1, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.toMatrix._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.toMatrix._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearMap.toMatrix._proof_3.{u1, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (fun (_x : LinearEquiv.{u1, u1, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.toMatrix._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.toMatrix._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearMap.toMatrix._proof_3.{u1, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) => (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) -> (Matrix.{u4, u4, u1} ι ι R)) (LinearEquiv.hasCoeToFun.{u1, u1, max u2 u3, max u4 u1} R R (LinearMap.{u1, u1, u2, u3} R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (Matrix.{u4, u4, u1} ι ι R) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.addCommMonoid.{u1, u1, u2, u3} R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Matrix.addCommMonoid.{u1, u4, u4} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))))) (LinearMap.module.{u1, u1, u1, u2, u3} R R R M M' (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) _inst_5 (LinearMap.toMatrix._proof_3.{u1, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5)) (Matrix.module.{u1, u4, u4, u1} ι ι R R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)))) (LinearMap.toMatrix._proof_1.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1)) (LinearMap.toMatrix._proof_2.{u1} R (CommRing.toCommSemiring.{u1} R _inst_1))) (LinearMap.toMatrix.{u1, u4, u4, u2, u3} R (CommRing.toCommSemiring.{u1} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 v v') f))), Eq.{max (succ u2) (succ u3)} (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) ((fun (a : Sort.{max (succ u2) (succ u3)}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{max (succ u2) (succ u3), max (succ u2) (succ u3)} a b] => self.0) (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_6.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_7.{u1} R _inst_1) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (HasLiftT.mk.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_6.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_7.{u1} R _inst_1) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (CoeTCₓ.coe.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_6.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_7.{u1} R _inst_1) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (coeBase.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_6.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_7.{u1} R _inst_1) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (LinearEquiv.LinearMap.hasCoe.{u1, u1, u2, u3} R R M M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.ofIsUnitDet._proof_6.{u1} R _inst_1) (LinearEquiv.ofIsUnitDet._proof_7.{u1} R _inst_1))))) (LinearEquiv.ofIsUnitDet.{u1, u2, u3, u4} R _inst_1 M _inst_2 _inst_3 M' _inst_4 _inst_5 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 f v v' h)) f
+but is expected to have type
+ forall {R : Type.{u4}} [_inst_1 : CommRing.{u4} R] {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] [_inst_3 : Module.{u4, u3} R M (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] {M' : Type.{u2}} [_inst_4 : AddCommGroup.{u2} M'] [_inst_5 : Module.{u4, u2} R M' (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] {f : LinearMap.{u4, u4, u3, u2} R R (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (RingHom.id.{u4} R (NonAssocRing.toNonAssocSemiring.{u4} R (Ring.toNonAssocRing.{u4} R (CommRing.toRing.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5} {v : Basis.{u1, u4, u3} ι R M (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3} {v' : Basis.{u1, u4, u2} ι R M' (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5} (h : IsUnit.{u4} R (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)))) (Matrix.det.{u4, u1} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (FunLike.coe.{max (max (max (succ u4) (succ u3)) (succ u2)) (succ u1), max (succ u3) (succ u2), max (succ u4) (succ u1)} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (fun (_x : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) => Matrix.{u1, u1, u4} ι ι R) _x) (SMulHomClass.toFunLike.{max (max (max u4 u3) u2) u1, u4, max u3 u2, max u4 u1} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (SMulZeroClass.toSMul.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toZero.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (DistribSMul.toSMulZeroClass.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddMonoid.toAddZeroClass.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (DistribMulAction.toDistribSMul.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Module.toDistribMulAction.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))))))) (SMulZeroClass.toSMul.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (AddMonoid.toZero.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribSMul.toSMulZeroClass.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (AddMonoid.toAddZeroClass.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribMulAction.toDistribSMul.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (Module.toDistribMulAction.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (DistribMulActionHomClass.toSMulHomClass.{max (max (max u4 u3) u2) u1, u4, max u3 u2, max u4 u1} (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (MonoidWithZero.toMonoid.{u4} R (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (AddCommMonoid.toAddMonoid.{max u4 u1} (Matrix.{u1, u1, u4} ι ι R) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))))) (Module.toDistribMulAction.{u4, max u3 u2} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5))))) (Module.toDistribMulAction.{u4, max u4 u1} R (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (SemilinearMapClass.distribMulActionHomClass.{u4, max u3 u2, max u4 u1, max (max (max u4 u3) u2) u1} R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (SemilinearEquivClass.instSemilinearMapClass.{u4, u4, max u3 u2, max u4 u1, max (max (max u4 u3) u2) u1} R R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearEquiv.{u4, u4, max u2 u3, max u4 u1} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u4, u4, max u3 u2, max u4 u1} R R (LinearMap.{u4, u4, u3, u2} R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (Matrix.{u1, u1, u4} ι ι R) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (LinearMap.addCommMonoid.{u4, u4, u3, u2} R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Matrix.addCommMonoid.{u4, u1, u1} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u4, u4, u4, u3, u2} R R R M M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) _inst_5 (smulCommClass_self.{u4, u2} R M' (CommSemiring.toCommMonoid.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (MulActionWithZero.toMulAction.{u4, u2} R M' (Semiring.toMonoidWithZero.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (AddMonoid.toZero.{u2} M' (AddCommMonoid.toAddMonoid.{u2} M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4))) (Module.toMulActionWithZero.{u4, u2} R M' (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_5)))) (Matrix.module.{u4, u1, u1, u4} ι ι R R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))))) (Semiring.toModule.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (CommSemiring.toSemiring.{u4} R (CommRing.toCommSemiring.{u4} R _inst_1)))))))) (LinearMap.toMatrix.{u4, u1, u1, u3, u2} R (CommRing.toCommSemiring.{u4} R _inst_1) ι ι _inst_7 _inst_7 (fun (a : ι) (b : ι) => _inst_6 a b) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 v v') f))), Eq.{max (succ u3) (succ u2)} (LinearMap.{u4, u4, u3, u2} R R (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (RingHom.id.{u4} R (NonAssocRing.toNonAssocSemiring.{u4} R (Ring.toNonAssocRing.{u4} R (CommRing.toRing.{u4} R _inst_1)))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5) (LinearEquiv.toLinearMap.{u4, u4, u3, u2} R R (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)) (RingHom.id.{u4} R (NonAssocRing.toNonAssocSemiring.{u4} R (Ring.toNonAssocRing.{u4} R (CommRing.toRing.{u4} R _inst_1)))) (RingHom.id.{u4} R (Semiring.toNonAssocSemiring.{u4} R (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1)))) (RingHomInvPair.ids.{u4} R (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1))) (RingHomInvPair.ids.{u4} R (Ring.toSemiring.{u4} R (CommRing.toRing.{u4} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_3 _inst_5 (LinearEquiv.ofIsUnitDet.{u4, u3, u2, u1} R _inst_1 M _inst_2 _inst_3 M' _inst_4 _inst_5 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 f v v' h)) f
+Case conversion may be inaccurate. Consider using '#align linear_equiv.coe_of_is_unit_det LinearEquiv.coe_ofIsUnitDetₓ'. -/
@[simp]
theorem LinearEquiv.coe_ofIsUnitDet {f : M →ₗ[R] M'} {v : Basis ι R M} {v' : Basis ι R M'}
(h : IsUnit (LinearMap.toMatrix v v' f).det) : (LinearEquiv.ofIsUnitDet h : M →ₗ[R] M') = f :=
@@ -490,6 +752,12 @@ theorem LinearEquiv.coe_ofIsUnitDet {f : M →ₗ[R] M'} {v : Basis ι R M} {v'
rfl
#align linear_equiv.coe_of_is_unit_det LinearEquiv.coe_ofIsUnitDet
+/- warning: linear_map.equiv_of_det_ne_zero -> LinearMap.equivOfDetNeZero is a dubious translation:
+lean 3 declaration is
+ forall {𝕜 : Type.{u1}} [_inst_8 : Field.{u1} 𝕜] {M : Type.{u2}} [_inst_9 : AddCommGroup.{u2} M] [_inst_10 : Module.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9)] [_inst_11 : FiniteDimensional.{u1, u2} 𝕜 M (Field.toDivisionRing.{u1} 𝕜 _inst_8) _inst_9 _inst_10] (f : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))) (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10), (Ne.{succ u1} 𝕜 (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) _inst_9 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) _inst_9 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) => (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) -> 𝕜) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) _inst_9 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) (LinearMap.det.{u2, u1} M _inst_9 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)) _inst_10) f) (OfNat.ofNat.{u1} 𝕜 0 (OfNat.mk.{u1} 𝕜 0 (Zero.zero.{u1} 𝕜 (MulZeroClass.toHasZero.{u1} 𝕜 (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} 𝕜 (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u1} 𝕜 (NonAssocRing.toNonUnitalNonAssocRing.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))))))))))) -> (LinearEquiv.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))) (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (Ring.toSemiring.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))))) (LinearMap.equivOfDetNeZero._proof_1.{u1} 𝕜 _inst_8) (LinearMap.equivOfDetNeZero._proof_2.{u1} 𝕜 _inst_8) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10)
+but is expected to have type
+ forall {𝕜 : Type.{u1}} [_inst_8 : Field.{u1} 𝕜] {M : Type.{u2}} [_inst_9 : AddCommGroup.{u2} M] [_inst_10 : Module.{u1, u2} 𝕜 M (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9)] [_inst_11 : FiniteDimensional.{u1, u2} 𝕜 M (Field.toDivisionRing.{u1} 𝕜 _inst_8) _inst_9 _inst_10] (f : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10), (Ne.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) _inst_9 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (fun (_x : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) _x) (MulHomClass.toFunLike.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) _inst_9 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulOneClass.toMul.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) _inst_9 _inst_10)))))) (MulOneClass.toMul.{u1} 𝕜 (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) (MonoidHomClass.toMulHomClass.{max u1 u2, u2, u1} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) _inst_9 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))) (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) _inst_9 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8))))))) (MonoidHom.monoidHomClass.{u2, u1} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) 𝕜 (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) (Module.End.ring.{u1, u2} 𝕜 M (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) _inst_9 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u1} 𝕜 (NonAssocSemiring.toMulZeroOneClass.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))))))) (LinearMap.det.{u2, u1} M _inst_9 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)) _inst_10) f) (OfNat.ofNat.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) 0 (Zero.toOfNat0.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) (CommMonoidWithZero.toZero.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) (CommGroupWithZero.toCommMonoidWithZero.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) (Semifield.toCommGroupWithZero.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) (Field.toSemifield.{u1} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u1, u1, u2, u2} 𝕜 𝕜 (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (Ring.toSemiring.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (CommRing.toRing.{u1} 𝕜 (EuclideanDomain.toCommRing.{u1} 𝕜 (Field.toEuclideanDomain.{u1} 𝕜 _inst_8)))))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10) => 𝕜) f) _inst_8))))))) -> (LinearEquiv.{u1, u1, u2, u2} 𝕜 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))) (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))) (RingHom.id.{u1} 𝕜 (NonAssocRing.toNonAssocSemiring.{u1} 𝕜 (Ring.toNonAssocRing.{u1} 𝕜 (DivisionRing.toRing.{u1} 𝕜 (Field.toDivisionRing.{u1} 𝕜 _inst_8))))) (RingHom.id.{u1} 𝕜 (Semiring.toNonAssocSemiring.{u1} 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8))))) (RingHomInvPair.ids.{u1} 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8)))) (RingHomInvPair.ids.{u1} 𝕜 (DivisionSemiring.toSemiring.{u1} 𝕜 (Semifield.toDivisionSemiring.{u1} 𝕜 (Field.toSemifield.{u1} 𝕜 _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) (AddCommGroup.toAddCommMonoid.{u2} M _inst_9) _inst_10 _inst_10)
+Case conversion may be inaccurate. Consider using '#align linear_map.equiv_of_det_ne_zero LinearMap.equivOfDetNeZeroₓ'. -/
/-- Builds a linear equivalence from a linear map on a finite-dimensional vector space whose
determinant is nonzero. -/
@[reducible]
@@ -503,6 +771,12 @@ def LinearMap.equivOfDetNeZero {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCom
LinearEquiv.ofIsUnitDet this
#align linear_map.equiv_of_det_ne_zero LinearMap.equivOfDetNeZero
+/- warning: linear_map.associated_det_of_eq_comp -> LinearMap.associated_det_of_eq_comp is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (e : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (f : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (f' : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3), (forall (x : M), Eq.{succ u2} M (coeFn.{succ u2, succ u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => M -> M) (LinearMap.hasCoeToFun.{u1, u1, u2, u2} R R M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) f x) (coeFn.{succ u2, succ u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => M -> M) (LinearMap.hasCoeToFun.{u1, u1, u2, u2} R R M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) f' (coeFn.{succ u2, succ u2} (LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearEquiv.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) => M -> M) (LinearEquiv.hasCoeToFun.{u1, u1, u2, u2} R R M M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) e x))) -> (Associated.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) f) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) f'))
+but is expected to have type
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (e : LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (f : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (f' : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3), (forall (x : M), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M) x) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) f x) (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) f' (FunLike.coe.{succ u1, succ u1, succ u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : M) => M) _x) (SMulHomClass.toFunLike.{u1, u2, u1, u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R M M (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (SMulZeroClass.toSMul.{u2, u1} R M (AddMonoid.toZero.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribSMul.toSMulZeroClass.{u2, u1} R M (AddMonoid.toAddZeroClass.{u1} M (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2))) (DistribMulAction.toDistribSMul.{u2, u1} R M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{u1, u2, u1, u1} (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R M M (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (AddCommMonoid.toAddMonoid.{u1} M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Module.toDistribMulAction.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u2, u1, u1, u1} R M M (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, u1, u1, u1} R R M M (LinearEquiv.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (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))) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, u1, u1} R R M M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3 (RingHom.id.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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)))))))) e x))) -> (Associated.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (MonoidWithZero.toMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) f) _inst_1)))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3)))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) f) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3)))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) f'))
+Case conversion may be inaccurate. Consider using '#align linear_map.associated_det_of_eq_comp LinearMap.associated_det_of_eq_compₓ'. -/
theorem LinearMap.associated_det_of_eq_comp (e : M ≃ₗ[R] M) (f f' : M →ₗ[R] M)
(h : ∀ x, f x = f' (e x)) : Associated f.det f'.det :=
by
@@ -515,6 +789,12 @@ theorem LinearMap.associated_det_of_eq_comp (e : M ≃ₗ[R] M) (f f' : M →ₗ
exact Associated.mul_left _ (associated_one_iff_is_unit.mpr e.is_unit_det')
#align linear_map.associated_det_of_eq_comp LinearMap.associated_det_of_eq_comp
+/- warning: linear_map.associated_det_comp_equiv -> LinearMap.associated_det_comp_equiv is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {N : Type.{u3}} [_inst_8 : AddCommGroup.{u3} N] [_inst_9 : Module.{u1, u3} R N (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8)] (f : LinearMap.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_9 _inst_3) (e : LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (e' : LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9), Associated.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) (LinearMap.comp.{u1, u1, u1, u2, u3, u2} R R R M N M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomCompTriple.ids.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) f ((fun (a : Sort.{max (succ u2) (succ u3)}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{max (succ u2) (succ u3), max (succ u2) (succ u3)} a b] => self.0) (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (HasLiftT.mk.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (CoeTCₓ.coe.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (coeBase.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u1, u1, u2, u3} R R M N (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))))) e))) (coeFn.{max (succ u1) (succ u2), max (succ u2) (succ u1)} (MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (fun (_x : MonoidHom.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) => (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) -> R) (MonoidHom.hasCoeToFun.{u2, u1} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u2} (LinearMap.{u1, u1, u2, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u1} R (NonAssocSemiring.toMulZeroOneClass.{u1} R (NonAssocRing.toNonAssocSemiring.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (LinearMap.det.{u2, u1} M _inst_2 R _inst_1 _inst_3) (LinearMap.comp.{u1, u1, u1, u2, u3, u2} R R R M N M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 _inst_9 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomCompTriple.ids.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) f ((fun (a : Sort.{max (succ u2) (succ u3)}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{max (succ u2) (succ u3), max (succ u2) (succ u3)} a b] => self.0) (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (HasLiftT.mk.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (CoeTCₓ.coe.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (coeBase.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearMap.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M N (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u1, u1, u2, u3} R R M N (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))))) e')))
+but is expected to have type
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {N : Type.{u3}} [_inst_8 : AddCommGroup.{u3} N] [_inst_9 : Module.{u2, u3} R N (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8)] (f : LinearMap.{u2, u2, u3, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) N M (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_3) (e : LinearEquiv.{u2, u2, u1, u3} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9) (e' : LinearEquiv.{u2, u2, u1, u3} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9), Associated.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (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)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (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)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, 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))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) (MonoidWithZero.toMonoid.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (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)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (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)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, 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))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) (Semiring.toMonoidWithZero.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (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)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (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)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, 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))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) (Ring.toSemiring.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (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)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (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)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, 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))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (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)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (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)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, 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))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) _inst_1)))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3)))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (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)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (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)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, 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))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (fun (_x : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) => R) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3)))))) (MulOneClass.toMul.{u2} R (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))) (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) R (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_3) (Module.End.ring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_2 _inst_3))))) (MulZeroOneClass.toMulOneClass.{u2} R (NonAssocSemiring.toMulZeroOneClass.{u2} R (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (LinearMap.det.{u1, u2} M _inst_2 R _inst_1 _inst_3) (LinearMap.comp.{u2, u2, u2, u1, u3, u1} R R R M N M (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)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 _inst_9 _inst_3 (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)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (RingHomCompTriple.ids.{u2, 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))))) f (LinearEquiv.toLinearMap.{u2, u2, u1, u3} 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 (NonAssocRing.toNonAssocSemiring.{u2} R (Ring.toNonAssocRing.{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))) M N (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} N _inst_8) _inst_3 _inst_9 e')))
+Case conversion may be inaccurate. Consider using '#align linear_map.associated_det_comp_equiv LinearMap.associated_det_comp_equivₓ'. -/
theorem LinearMap.associated_det_comp_equiv {N : Type _} [AddCommGroup N] [Module R N]
(f : N →ₗ[R] M) (e e' : M ≃ₗ[R] N) : Associated (f ∘ₗ ↑e).det (f ∘ₗ ↑e').det :=
by
@@ -524,6 +804,7 @@ theorem LinearMap.associated_det_comp_equiv {N : Type _} [AddCommGroup N] [Modul
LinearEquiv.apply_symm_apply]
#align linear_map.associated_det_comp_equiv LinearMap.associated_det_comp_equiv
+#print Basis.det /-
/-- The determinant of a family of vectors with respect to some basis, as an alternating
multilinear map. -/
def Basis.det : AlternatingMap R M R ι
@@ -546,14 +827,33 @@ def Basis.det : AlternatingMap R M R ι
apply det_zero_of_row_eq hij
rw [update_row_ne hij.symm, update_row_self]
#align basis.det Basis.det
+-/
+/- warning: basis.det_apply -> Basis.det_apply is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (v : ι -> M), Eq.{succ u1} R (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v) (Matrix.det.{u1, u3} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (Basis.toMatrix.{u3, u3, u1, u2} ι ι R M (CommRing.toCommSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 e v))
+but is expected to have type
+ forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] (e : Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (v : ι -> M), Eq.{succ u3} R (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u1), succ u3} (AlternatingMap.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (Basis.det.{u3, u2, u1} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v) (Matrix.det.{u3, u1} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1 (Basis.toMatrix.{u1, u1, u3, u2} ι ι R M (CommRing.toCommSemiring.{u3} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 e v))
+Case conversion may be inaccurate. Consider using '#align basis.det_apply Basis.det_applyₓ'. -/
theorem Basis.det_apply (v : ι → M) : e.det v = det (e.toMatrix v) :=
rfl
#align basis.det_apply Basis.det_apply
+/- warning: basis.det_self -> Basis.det_self is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3), Eq.{succ u1} R (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (fun (_x : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u1) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) e)) (OfNat.ofNat.{u1} R 1 (OfNat.mk.{u1} R 1 (One.one.{u1} R (AddMonoidWithOne.toOne.{u1} R (AddGroupWithOne.toAddMonoidWithOne.{u1} R (AddCommGroupWithOne.toAddGroupWithOne.{u1} R (Ring.toAddCommGroupWithOne.{u1} R (CommRing.toRing.{u1} R _inst_1))))))))
+but is expected to have type
+ forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] (e : Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3), Eq.{succ u3} R (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u1), succ u3} (AlternatingMap.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (Basis.det.{u3, u2, u1} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) e)) (OfNat.ofNat.{u3} R 1 (One.toOfNat1.{u3} R (NonAssocRing.toOne.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1)))))
+Case conversion may be inaccurate. Consider using '#align basis.det_self Basis.det_selfₓ'. -/
theorem Basis.det_self : e.det e = 1 := by simp [e.det_apply]
#align basis.det_self Basis.det_self
+/- warning: basis.det_is_empty -> Basis.det_isEmpty is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) [_inst_8 : IsEmpty.{succ u3} ι], Eq.{max (succ u2) (succ u1) (succ u3)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (AlternatingMap.constOfIsEmpty.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι _inst_8 (OfNat.ofNat.{u1} R 1 (OfNat.mk.{u1} R 1 (One.one.{u1} R (AddMonoidWithOne.toOne.{u1} R (AddGroupWithOne.toAddMonoidWithOne.{u1} R (AddCommGroupWithOne.toAddGroupWithOne.{u1} R (Ring.toAddCommGroupWithOne.{u1} R (CommRing.toRing.{u1} R _inst_1)))))))))
+but is expected to have type
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) [_inst_8 : IsEmpty.{succ u3} ι], Eq.{max (max (succ u2) (succ u1)) (succ u3)} (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (AlternatingMap.constOfIsEmpty.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι _inst_8 (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (NonAssocRing.toOne.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))))
+Case conversion may be inaccurate. Consider using '#align basis.det_is_empty Basis.det_isEmptyₓ'. -/
@[simp]
theorem Basis.det_isEmpty [IsEmpty ι] : e.det = AlternatingMap.constOfIsEmpty R M 1 :=
by
@@ -561,10 +861,22 @@ theorem Basis.det_isEmpty [IsEmpty ι] : e.det = AlternatingMap.constOfIsEmpty R
exact Matrix.det_isEmpty
#align basis.det_is_empty Basis.det_isEmpty
+/- warning: basis.det_ne_zero -> Basis.det_ne_zero is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) [_inst_8 : Nontrivial.{u1} R], Ne.{max (succ u2) (succ u1) (succ u3)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (OfNat.ofNat.{max u2 u1 u3} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) 0 (OfNat.mk.{max u2 u1 u3} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) 0 (Zero.zero.{max u2 u1 u3} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (AlternatingMap.zero.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι))))
+but is expected to have type
+ forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] (e : Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) [_inst_8 : Nontrivial.{u3} R], Ne.{max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (Basis.det.{u3, u2, u1} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (OfNat.ofNat.{max (max u3 u2) u1} (AlternatingMap.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) 0 (Zero.toOfNat0.{max (max u3 u2) u1} (AlternatingMap.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (AlternatingMap.zero.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι)))
+Case conversion may be inaccurate. Consider using '#align basis.det_ne_zero Basis.det_ne_zeroₓ'. -/
/-- `basis.det` is not the zero map. -/
theorem Basis.det_ne_zero [Nontrivial R] : e.det ≠ 0 := fun h => by simpa [h] using e.det_self
#align basis.det_ne_zero Basis.det_ne_zero
+/- warning: is_basis_iff_det -> is_basis_iff_det is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) {v : ι -> M}, Iff (And (LinearIndependent.{u3, u1, u2} ι R M v (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (Eq.{succ u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (Submodule.span.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 (Set.range.{u2, succ u3} M ι v)) (Top.top.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (Submodule.hasTop.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (IsUnit.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v))
+but is expected to have type
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) {v : ι -> M}, Iff (And (LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Eq.{succ u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 (Set.range.{u1, succ u3} M ι v)) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)))) (IsUnit.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v))
+Case conversion may be inaccurate. Consider using '#align is_basis_iff_det is_basis_iff_detₓ'. -/
theorem is_basis_iff_det {v : ι → M} :
LinearIndependent R v ∧ span R (Set.range v) = ⊤ ↔ IsUnit (e.det v) :=
by
@@ -585,10 +897,22 @@ theorem is_basis_iff_det {v : ι → M} :
exact ⟨v'.linear_independent, v'.span_eq⟩
#align is_basis_iff_det is_basis_iff_det
+/- warning: basis.is_unit_det -> Basis.isUnit_det is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (e' : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3), IsUnit.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (fun (_x : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u1) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) e'))
+but is expected to have type
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (e' : Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3), IsUnit.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) e'))
+Case conversion may be inaccurate. Consider using '#align basis.is_unit_det Basis.isUnit_detₓ'. -/
theorem Basis.isUnit_det (e' : Basis ι R M) : IsUnit (e.det e') :=
(is_basis_iff_det e).mp ⟨e'.LinearIndependent, e'.span_eq⟩
#align basis.is_unit_det Basis.isUnit_det
+/- warning: alternating_map.eq_smul_basis_det -> AlternatingMap.eq_smul_basis_det is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (f : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι), Eq.{max (succ u2) (succ u1) (succ u3)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) f (SMul.smul.{u1, max u2 u1 u3} R (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (AlternatingMap.smul.{u1, u2, u1, u3, u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Module.toDistribMulAction.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (smulCommClass_self.{u1, u1} R R (CommRing.toCommMonoid.{u1} R _inst_1) (Monoid.toMulAction.{u1} R (CommMonoid.toMonoid.{u1} R (CommRing.toCommMonoid.{u1} R _inst_1))))) (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) f (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (fun (_x : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u1) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) e)) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e))
+but is expected to have type
+ forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] (e : Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (f : AlternatingMap.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι), Eq.{max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) f (HSMul.hSMul.{u3, max (max u3 u2) u1, max (max u3 u2) u1} R (AlternatingMap.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (AlternatingMap.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (instHSMul.{u3, max (max u3 u2) u1} R (AlternatingMap.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (AlternatingMap.smul.{u3, u2, u3, u1, u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (Module.toDistribMulAction.{u3, u3} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (smulCommClass_self.{u3, u3} R R (CommRing.toCommMonoid.{u3} R _inst_1) (MulActionWithZero.toMulAction.{u3, u3} R R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R (CommRing.toCommSemiring.{u3} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{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 u1), max (succ u2) (succ u1), succ u3} (AlternatingMap.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) f (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) e)) (Basis.det.{u3, u2, u1} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e))
+Case conversion may be inaccurate. Consider using '#align alternating_map.eq_smul_basis_det AlternatingMap.eq_smul_basis_detₓ'. -/
/-- Any alternating map to `R` where `ι` has the cardinality of a basis equals the determinant
map with respect to that basis, multiplied by the value of that alternating map on that basis. -/
theorem AlternatingMap.eq_smul_basis_det (f : AlternatingMap R M R ι) : f = f e • e.det :=
@@ -599,6 +923,12 @@ theorem AlternatingMap.eq_smul_basis_det (f : AlternatingMap R M R ι) : f = f e
simp [AlternatingMap.map_perm, Basis.det_self]
#align alternating_map.eq_smul_basis_det AlternatingMap.eq_smul_basis_det
+/- warning: alternating_map.map_basis_eq_zero_iff -> AlternatingMap.map_basis_eq_zero_iff is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_8 : Finite.{succ u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (f : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι), Iff (Eq.{succ u1} R (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) f (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (fun (_x : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u1) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) e)) (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 (CommRing.toRing.{u1} R _inst_1)))))))))) (Eq.{max (succ u2) (succ u1) (succ u3)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) f (OfNat.ofNat.{max u2 u1 u3} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) 0 (OfNat.mk.{max u2 u1 u3} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) 0 (Zero.zero.{max u2 u1 u3} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (AlternatingMap.zero.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι)))))
+but is expected to have type
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_8 : Finite.{succ u3} ι] (e : Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (f : AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι), Iff (Eq.{succ u2} R (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) f (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) e)) (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Eq.{max (max (succ u2) (succ u1)) (succ u3)} (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) f (OfNat.ofNat.{max (max u2 u1) u3} (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) 0 (Zero.toOfNat0.{max (max u2 u1) u3} (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (AlternatingMap.zero.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι))))
+Case conversion may be inaccurate. Consider using '#align alternating_map.map_basis_eq_zero_iff AlternatingMap.map_basis_eq_zero_iffₓ'. -/
@[simp]
theorem AlternatingMap.map_basis_eq_zero_iff {ι : Type _} [Finite ι] (e : Basis ι R M)
(f : AlternatingMap R M R ι) : f e = 0 ↔ f = 0 :=
@@ -608,6 +938,12 @@ theorem AlternatingMap.map_basis_eq_zero_iff {ι : Type _} [Finite ι] (e : Basi
simpa [h] using f.eq_smul_basis_det e, fun h => h.symm ▸ AlternatingMap.zero_apply _⟩
#align alternating_map.map_basis_eq_zero_iff AlternatingMap.map_basis_eq_zero_iff
+/- warning: alternating_map.map_basis_ne_zero_iff -> AlternatingMap.map_basis_ne_zero_iff is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_8 : Finite.{succ u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (f : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι), Iff (Ne.{succ u1} R (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) f (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (fun (_x : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u1) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) e)) (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 (CommRing.toRing.{u1} R _inst_1)))))))))) (Ne.{max (succ u2) (succ u1) (succ u3)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) f (OfNat.ofNat.{max u2 u1 u3} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) 0 (OfNat.mk.{max u2 u1 u3} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) 0 (Zero.zero.{max u2 u1 u3} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (AlternatingMap.zero.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι)))))
+but is expected to have type
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_8 : Finite.{succ u3} ι] (e : Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (f : AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι), Iff (Ne.{succ u2} R (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) f (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), succ u3, succ u1} (Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) e)) (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1)))))) (Ne.{max (max (succ u2) (succ u1)) (succ u3)} (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) f (OfNat.ofNat.{max (max u2 u1) u3} (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) 0 (Zero.toOfNat0.{max (max u2 u1) u3} (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (AlternatingMap.zero.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι))))
+Case conversion may be inaccurate. Consider using '#align alternating_map.map_basis_ne_zero_iff AlternatingMap.map_basis_ne_zero_iffₓ'. -/
theorem AlternatingMap.map_basis_ne_zero_iff {ι : Type _} [Finite ι] (e : Basis ι R M)
(f : AlternatingMap R M R ι) : f e ≠ 0 ↔ f ≠ 0 :=
not_congr <| f.map_basis_eq_zero_iff e
@@ -615,6 +951,12 @@ theorem AlternatingMap.map_basis_ne_zero_iff {ι : Type _} [Finite ι] (e : Basi
variable {A : Type _} [CommRing A] [Module A M]
+/- warning: basis.det_comp -> Basis.det_comp is a dubious translation:
+lean 3 declaration is
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u3}} [_inst_8 : CommRing.{u3} A] [_inst_9 : Module.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (e : Basis.{u2, u3, u1} ι A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (v : ι -> M), Eq.{succ u3} A (coeFn.{max (succ u1) (succ u3) (succ u2), max (max (succ u2) (succ u1)) (succ u3)} (AlternatingMap.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) (fun (_x : AlternatingMap.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) => (ι -> M) -> A) (AlternatingMap.coeFun.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) (Basis.det.{u3, u1, u2} A _inst_8 M _inst_2 _inst_9 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (Function.comp.{succ u2, succ u1, succ u1} ι M M (coeFn.{succ u1, succ u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => M -> M) (LinearMap.hasCoeToFun.{u3, u3, u1, u1} A A M M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))))) f) v)) (HMul.hMul.{u3, u3, u3} A A A (instHMul.{u3} A (Distrib.toHasMul.{u3} A (Ring.toDistrib.{u3} A (CommRing.toRing.{u3} A _inst_8)))) (coeFn.{max (succ u3) (succ u1), max (succ u1) (succ u3)} (MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (fun (_x : MonoidHom.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) => (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) -> A) (MonoidHom.hasCoeToFun.{u1, u3} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u3, u3, u1, u1} A A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) (RingHom.id.{u3} A (Semiring.toNonAssocSemiring.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u3, u1} A M (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u3} A (NonAssocSemiring.toMulZeroOneClass.{u3} A (NonAssocRing.toNonAssocSemiring.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8)))))) (LinearMap.det.{u1, u3} M _inst_2 A _inst_8 _inst_9) f) (coeFn.{max (succ u1) (succ u3) (succ u2), max (max (succ u2) (succ u1)) (succ u3)} (AlternatingMap.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) (fun (_x : AlternatingMap.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) => (ι -> M) -> A) (AlternatingMap.coeFun.{u3, u1, u3, u2} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (AddCommGroup.toAddCommMonoid.{u3} A (NonUnitalNonAssocRing.toAddCommGroup.{u3} A (NonAssocRing.toNonUnitalNonAssocRing.{u3} A (Ring.toNonAssocRing.{u3} A (CommRing.toRing.{u3} A _inst_8))))) (Semiring.toModule.{u3} A (Ring.toSemiring.{u3} A (CommRing.toRing.{u3} A _inst_8))) ι) (Basis.det.{u3, u1, u2} A _inst_8 M _inst_2 _inst_9 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v))
+but is expected to have type
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u2}} [_inst_8 : CommRing.{u2} A] [_inst_9 : Module.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (e : Basis.{u3, u2, u1} ι A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (f : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (v : ι -> M), Eq.{succ u2} A (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) ι) (ι -> M) (fun (_x : ι -> M) => A) (AlternatingMap.funLike.{u2, u1, u2, u3} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) ι) (Basis.det.{u2, u1, u3} A _inst_8 M _inst_2 _inst_9 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (Function.comp.{succ u3, succ u1, succ u1} ι M M (FunLike.coe.{succ u1, succ u1, succ u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} A A M M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9 (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) f) v)) (HMul.hMul.{u2, u2, u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) A ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (instHMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (NonUnitalNonAssocRing.toMul.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (NonAssocRing.toNonUnitalNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (Ring.toNonAssocRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) (CommRing.toRing.{u2} ((fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) f) _inst_8))))) (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (fun (_x : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) => A) _x) (MulHomClass.toFunLike.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulOneClass.toMul.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9)))))) (MulOneClass.toMul.{u2} A (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u2 u1, u1, u2} (MonoidHom.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))) (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (MonoidHom.monoidHomClass.{u1, u2} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) A (MulZeroOneClass.toMulOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocSemiring.toMulZeroOneClass.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (NonAssocRing.toNonAssocSemiring.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Ring.toNonAssocRing.{u1} (LinearMap.{u2, u2, u1, u1} A A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) (RingHom.id.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))) M M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 _inst_9) (Module.End.ring.{u2, u1} A M (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) _inst_2 _inst_9))))) (MulZeroOneClass.toMulOneClass.{u2} A (NonAssocSemiring.toMulZeroOneClass.{u2} A (NonAssocRing.toNonAssocSemiring.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8)))))))) (LinearMap.det.{u1, u2} M _inst_2 A _inst_8 _inst_9) f) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) ι) (ι -> M) (fun (_x : ι -> M) => A) (AlternatingMap.funLike.{u2, u1, u2, u3} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} A (NonAssocRing.toNonUnitalNonAssocRing.{u2} A (Ring.toNonAssocRing.{u2} A (CommRing.toRing.{u2} A _inst_8))))) (Semiring.toModule.{u2} A (Ring.toSemiring.{u2} A (CommRing.toRing.{u2} A _inst_8))) ι) (Basis.det.{u2, u1, u3} A _inst_8 M _inst_2 _inst_9 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v))
+Case conversion may be inaccurate. Consider using '#align basis.det_comp Basis.det_compₓ'. -/
@[simp]
theorem Basis.det_comp (e : Basis ι A M) (f : M →ₗ[A] M) (v : ι → M) :
e.det (f ∘ v) = f.det * e.det v := by
@@ -623,6 +965,12 @@ theorem Basis.det_comp (e : Basis ι A M) (f : M →ₗ[A] M) (v : ι → M) :
e.constr_comp]
#align basis.det_comp Basis.det_comp
+/- warning: basis.det_comp_basis -> Basis.det_comp_basis is a dubious translation:
+lean 3 declaration is
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {M' : Type.{u2}} [_inst_4 : AddCommGroup.{u2} M'] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {A : Type.{u4}} [_inst_8 : CommRing.{u4} A] [_inst_9 : Module.{u4, u1} A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_10 : Module.{u4, u2} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4)] (b : Basis.{u3, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (b' : Basis.{u3, u4, u2} ι A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10) (f : LinearMap.{u4, u4, u1, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_9 _inst_10), Eq.{succ u4} A (coeFn.{max (succ u2) (succ u4) (succ u3), max (max (succ u3) (succ u2)) (succ u4)} (AlternatingMap.{u4, u2, u4, u3} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 A (AddCommGroup.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toAddCommGroup.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) ι) (fun (_x : AlternatingMap.{u4, u2, u4, u3} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 A (AddCommGroup.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toAddCommGroup.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) ι) => (ι -> M') -> A) (AlternatingMap.coeFun.{u4, u2, u4, u3} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 A (AddCommGroup.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toAddCommGroup.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) ι) (Basis.det.{u4, u2, u3} A _inst_8 M' _inst_4 _inst_10 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b') (Function.comp.{succ u3, succ u1, succ u2} ι M M' (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (LinearMap.{u4, u4, u1, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_9 _inst_10) (fun (_x : LinearMap.{u4, u4, u1, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_9 _inst_10) => M -> M') (LinearMap.hasCoeToFun.{u4, u4, u1, u2} A A M M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_9 _inst_10 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))))) f) (coeFn.{max (succ u3) (succ u4) (succ u1), max (succ u3) (succ u1)} (Basis.{u3, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (fun (_x : Basis.{u3, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u4) (succ u1), succ u3, succ u1} (Basis.{u3, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9)) b))) (coeFn.{max (succ u4) (succ u2), max (succ u2) (succ u4)} (MonoidHom.{u2, u4} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Module.End.ring.{u4, u2} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) _inst_4 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))))) (fun (_x : MonoidHom.{u2, u4} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Module.End.ring.{u4, u2} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) _inst_4 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))))) => (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) -> A) (MonoidHom.hasCoeToFun.{u2, u4} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Ring.toNonAssocRing.{u2} (LinearMap.{u4, u4, u2, u2} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_10) (Module.End.ring.{u4, u2} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) _inst_4 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))))) (LinearMap.det.{u2, u4} M' _inst_4 A _inst_8 _inst_10) (LinearMap.comp.{u4, u4, u4, u2, u1, u2} A A A M' M M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 _inst_9 _inst_10 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomCompTriple.ids.{u4, u4} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))))) f ((fun (a : Sort.{max (succ u2) (succ u1)}) (b : Sort.{max (succ u2) (succ u1)}) [self : HasLiftT.{max (succ u2) (succ u1), max (succ u2) (succ u1)} a b] => self.0) (LinearEquiv.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (LinearMap.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (HasLiftT.mk.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (LinearMap.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (CoeTCₓ.coe.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (LinearMap.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (coeBase.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (LinearEquiv.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (LinearMap.{u4, u4, u2, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9) (LinearEquiv.LinearMap.hasCoe.{u4, u4, u2, u1} A A M' M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))))))) (Basis.equiv.{u3, u3, u4, u2, u1} ι ι A M' M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u2} M' _inst_4) _inst_10 (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 b' b (Equiv.refl.{succ u3} ι)))))
+but is expected to have type
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι] {A : Type.{u4}} [_inst_8 : CommRing.{u4} A] [_inst_9 : Module.{u4, u1} A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_10 : Module.{u4, u3} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] (b : Basis.{u2, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) (b' : Basis.{u2, u4, u3} ι A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10) (f : LinearMap.{u4, u4, u1, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_9 _inst_10), Eq.{succ u4} A (FunLike.coe.{max (max (succ u3) (succ u4)) (succ u2), max (succ u3) (succ u2), succ u4} (AlternatingMap.{u4, u3, u4, u2} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) ι) (ι -> M') (fun (_x : ι -> M') => A) (AlternatingMap.funLike.{u4, u3, u4, u2} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u4} A (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u4} A (NonAssocRing.toNonUnitalNonAssocRing.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (Semiring.toModule.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) ι) (Basis.det.{u4, u3, u2} A _inst_8 M' _inst_4 _inst_10 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b') (Function.comp.{succ u2, succ u1, succ u3} ι M M' (FunLike.coe.{max (succ u1) (succ u3), succ u1, succ u3} (LinearMap.{u4, u4, u1, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M M' (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_9 _inst_10) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => M') _x) (LinearMap.instFunLikeLinearMap.{u4, u4, u1, u3} A A M M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_9 _inst_10 (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) f) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), succ u2, succ u1} (Basis.{u2, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u2, u4, u1} ι A M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9) b))) (FunLike.coe.{max (succ u4) (succ u3), succ u3, succ u4} (MonoidHom.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Ring.toNonAssocRing.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.ring.{u4, u3} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) _inst_4 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))))) (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (fun (_x : LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) => A) _x) (MulHomClass.toFunLike.{max u4 u3, u3, u4} (MonoidHom.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Ring.toNonAssocRing.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.ring.{u4, u3} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) _inst_4 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))))) (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulOneClass.toMul.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Ring.toNonAssocRing.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.ring.{u4, u3} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) _inst_4 _inst_10)))))) (MulOneClass.toMul.{u4} A (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))))) (MonoidHomClass.toMulHomClass.{max u4 u3, u3, u4} (MonoidHom.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Ring.toNonAssocRing.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.ring.{u4, u3} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) _inst_4 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))))) (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Ring.toNonAssocRing.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.ring.{u4, u3} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) _inst_4 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8))))) (MonoidHom.monoidHomClass.{u3, u4} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) A (MulZeroOneClass.toMulOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocSemiring.toMulZeroOneClass.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (NonAssocRing.toNonAssocSemiring.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Ring.toNonAssocRing.{u3} (LinearMap.{u4, u4, u3, u3} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))) M' M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_10) (Module.End.ring.{u4, u3} A M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) _inst_4 _inst_10))))) (MulZeroOneClass.toMulOneClass.{u4} A (NonAssocSemiring.toMulZeroOneClass.{u4} A (NonAssocRing.toNonAssocSemiring.{u4} A (Ring.toNonAssocRing.{u4} A (CommRing.toRing.{u4} A _inst_8)))))))) (LinearMap.det.{u3, u4} M' _inst_4 A _inst_8 _inst_10) (LinearMap.comp.{u4, u4, u4, u3, u1, u3} A A A M' M M' (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 _inst_9 _inst_10 (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomCompTriple.ids.{u4, u4} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))))) f (LinearEquiv.toLinearMap.{u4, u4, u3, u1} A A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHom.id.{u4} A (Semiring.toNonAssocSemiring.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) (RingHomInvPair.ids.{u4} A (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_10 _inst_9 (Basis.equiv.{u2, u2, u4, u3, u1} ι ι A M' M (Ring.toSemiring.{u4} A (CommRing.toRing.{u4} A _inst_8)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_10 (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_9 b' b (Equiv.refl.{succ u2} ι)))))
+Case conversion may be inaccurate. Consider using '#align basis.det_comp_basis Basis.det_comp_basisₓ'. -/
@[simp]
theorem Basis.det_comp_basis [Module A M'] (b : Basis ι A M) (b' : Basis ι A M') (f : M →ₗ[A] M') :
b'.det (f ∘ b) = LinearMap.det (f ∘ₗ (b'.Equiv b (Equiv.refl ι) : M' →ₗ[A] M)) :=
@@ -633,27 +981,57 @@ theorem Basis.det_comp_basis [Module A M'] (b : Basis ι A M) (b' : Basis ι A M
rw [Basis.toMatrix_apply, LinearMap.toMatrix_apply]
#align basis.det_comp_basis Basis.det_comp_basis
+/- warning: basis.det_reindex -> Basis.det_reindex is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {ι' : Type.{u4}} [_inst_10 : Fintype.{u4} ι'] [_inst_11 : DecidableEq.{succ u4} ι'] (b : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (v : ι' -> M) (e : Equiv.{succ u3, succ u4} ι ι'), Eq.{succ u1} R (coeFn.{max (succ u2) (succ u1) (succ u4), max (max (succ u4) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι') (fun (_x : AlternatingMap.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι') => (ι' -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι') (Basis.det.{u1, u2, u4} R _inst_1 M _inst_2 _inst_3 ι' (fun (a : ι') (b : ι') => _inst_11 a b) _inst_10 (Basis.reindex.{u3, u4, u1, u2} ι ι' R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 b e)) v) (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) (Function.comp.{succ u3, succ u4, succ u2} ι ι' M v (coeFn.{max 1 (max (succ u3) (succ u4)) (succ u4) (succ u3), max (succ u3) (succ u4)} (Equiv.{succ u3, succ u4} ι ι') (fun (_x : Equiv.{succ u3, succ u4} ι ι') => ι -> ι') (Equiv.hasCoeToFun.{succ u3, succ u4} ι ι') e)))
+but is expected to have type
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {ι' : Type.{u4}} [_inst_10 : Fintype.{u4} ι'] [_inst_11 : DecidableEq.{succ u4} ι'] (b : Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (v : ι' -> M) (e : Equiv.{succ u3, succ u4} ι ι'), Eq.{succ u2} R (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), max (succ u1) (succ u4), succ u2} (AlternatingMap.{u2, u1, u2, u4} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι') (ι' -> M) (fun (_x : ι' -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u4} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι') (Basis.det.{u2, u1, u4} R _inst_1 M _inst_2 _inst_3 ι' (fun (a : ι') (b : ι') => _inst_11 a b) _inst_10 (Basis.reindex.{u3, u4, u2, u1} ι ι' R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 b e)) v) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) (Function.comp.{succ u3, succ u4, succ u1} ι ι' M v (FunLike.coe.{max (succ u3) (succ u4), succ u3, succ u4} (Equiv.{succ u3, succ u4} ι ι') ι (fun (_x : ι) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : ι) => ι') _x) (Equiv.instFunLikeEquiv.{succ u3, succ u4} ι ι') e)))
+Case conversion may be inaccurate. Consider using '#align basis.det_reindex Basis.det_reindexₓ'. -/
theorem Basis.det_reindex {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (b : Basis ι R M) (v : ι' → M)
(e : ι ≃ ι') : (b.reindex e).det v = b.det (v ∘ e) := by
rw [Basis.det_apply, Basis.toMatrix_reindex', det_reindex_alg_equiv, Basis.det_apply]
#align basis.det_reindex Basis.det_reindex
+/- warning: basis.det_reindex_symm -> Basis.det_reindex_symm is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {ι' : Type.{u4}} [_inst_10 : Fintype.{u4} ι'] [_inst_11 : DecidableEq.{succ u4} ι'] (b : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (v : ι -> M) (e : Equiv.{succ u4, succ u3} ι' ι), Eq.{succ u1} R (coeFn.{max (succ u2) (succ u1) (succ u4), max (max (succ u4) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι') (fun (_x : AlternatingMap.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι') => (ι' -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι') (Basis.det.{u1, u2, u4} R _inst_1 M _inst_2 _inst_3 ι' (fun (a : ι') (b : ι') => _inst_11 a b) _inst_10 (Basis.reindex.{u3, u4, u1, u2} ι ι' R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 b (Equiv.symm.{succ u4, succ u3} ι' ι e))) (Function.comp.{succ u4, succ u3, succ u2} ι' ι M v (coeFn.{max 1 (max (succ u4) (succ u3)) (succ u3) (succ u4), max (succ u4) (succ u3)} (Equiv.{succ u4, succ u3} ι' ι) (fun (_x : Equiv.{succ u4, succ u3} ι' ι) => ι' -> ι) (Equiv.hasCoeToFun.{succ u4, succ u3} ι' ι) e))) (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) v)
+but is expected to have type
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] {ι' : Type.{u4}} [_inst_10 : Fintype.{u4} ι'] [_inst_11 : DecidableEq.{succ u4} ι'] (b : Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (v : ι -> M) (e : Equiv.{succ u4, succ u3} ι' ι), Eq.{succ u2} R (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u4), max (succ u1) (succ u4), succ u2} (AlternatingMap.{u2, u1, u2, u4} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι') (ι' -> M) (fun (_x : ι' -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u4} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι') (Basis.det.{u2, u1, u4} R _inst_1 M _inst_2 _inst_3 ι' (fun (a : ι') (b : ι') => _inst_11 a b) _inst_10 (Basis.reindex.{u3, u4, u2, u1} ι ι' R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 b (Equiv.symm.{succ u4, succ u3} ι' ι e))) (Function.comp.{succ u4, succ u3, succ u1} ι' ι M v (FunLike.coe.{max (succ u3) (succ u4), succ u4, succ u3} (Equiv.{succ u4, succ u3} ι' ι) ι' (fun (_x : ι') => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : ι') => ι) _x) (Equiv.instFunLikeEquiv.{succ u4, succ u3} ι' ι) e))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) v)
+Case conversion may be inaccurate. Consider using '#align basis.det_reindex_symm Basis.det_reindex_symmₓ'. -/
theorem Basis.det_reindex_symm {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (b : Basis ι R M)
(v : ι → M) (e : ι' ≃ ι) : (b.reindex e.symm).det (v ∘ e) = b.det v := by
rw [Basis.det_reindex, Function.comp.assoc, e.self_comp_symm, Function.comp.right_id]
#align basis.det_reindex_symm Basis.det_reindex_symm
+/- warning: basis.det_map -> Basis.det_map is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] [_inst_5 : Module.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] {ι : Type.{u4}} [_inst_6 : DecidableEq.{succ u4} ι] [_inst_7 : Fintype.{u4} ι] (b : Basis.{u4, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (f : LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5) (v : ι -> M'), Eq.{succ u1} R (coeFn.{max (succ u3) (succ u1) (succ u4), max (max (succ u4) (succ u3)) (succ u1)} (AlternatingMap.{u1, u3, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u3, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M') -> R) (AlternatingMap.coeFun.{u1, u3, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u3, u4} R _inst_1 M' _inst_4 _inst_5 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 (Basis.map.{u4, u1, u2, u3} ι R M M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 b f)) v) (coeFn.{max (succ u2) (succ u1) (succ u4), max (max (succ u4) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u4} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) (Function.comp.{succ u4, succ u3, succ u2} ι M' M (coeFn.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearEquiv.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (fun (_x : LinearEquiv.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) => M' -> M) (LinearEquiv.hasCoeToFun.{u1, u1, u3, u2} R R M' M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearEquiv.symm.{u1, u1, u2, u3} R R M M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) f)) v))
+but is expected to have type
+ forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u1}} [_inst_4 : AddCommGroup.{u1} M'] [_inst_5 : Module.{u3, u1} R M' (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4)] {ι : Type.{u4}} [_inst_6 : DecidableEq.{succ u4} ι] [_inst_7 : Fintype.{u4} ι] (b : Basis.{u4, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (f : LinearEquiv.{u3, u3, u2, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5) (v : ι -> M'), Eq.{succ u3} R (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u4), max (succ u1) (succ u4), succ u3} (AlternatingMap.{u3, u1, u3, u4} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (ι -> M') (fun (_x : ι -> M') => R) (AlternatingMap.funLike.{u3, u1, u3, u4} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (Basis.det.{u3, u1, u4} R _inst_1 M' _inst_4 _inst_5 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 (Basis.map.{u4, u3, u2, u1} ι R M M' (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 b f)) v) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u4), max (succ u2) (succ u4), succ u3} (AlternatingMap.{u3, u2, u3, u4} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u3, u2, u3, u4} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (Basis.det.{u3, u2, u4} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) (Function.comp.{succ u4, succ u1, succ u2} ι M' M (FunLike.coe.{max (succ u2) (succ u1), succ u1, succ u2} (LinearEquiv.{u3, u3, u1, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _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 u1, u3, u1, u2} (LinearEquiv.{u3, u3, u1, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) R M' M (SMulZeroClass.toSMul.{u3, u1} R M' (AddMonoid.toZero.{u1} M' (AddCommMonoid.toAddMonoid.{u1} M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4))) (DistribSMul.toSMulZeroClass.{u3, u1} R M' (AddMonoid.toAddZeroClass.{u1} M' (AddCommMonoid.toAddMonoid.{u1} M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4))) (DistribMulAction.toDistribSMul.{u3, u1} R M' (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4)) (Module.toDistribMulAction.{u3, u1} R M' (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5)))) (SMulZeroClass.toSMul.{u3, u2} R M (AddMonoid.toZero.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (DistribSMul.toSMulZeroClass.{u3, u2} R M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (DistribMulAction.toDistribSMul.{u3, u2} R M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Module.toDistribMulAction.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)))) (DistribMulActionHomClass.toSMulHomClass.{max u2 u1, u3, u1, u2} (LinearEquiv.{u3, u3, u1, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) R M' M (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (AddCommMonoid.toAddMonoid.{u1} M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4)) (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Module.toDistribMulAction.{u3, u1} R M' (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5) (Module.toDistribMulAction.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (SemilinearMapClass.distribMulActionHomClass.{u3, u1, u2, max u2 u1} R M' M (LinearEquiv.{u3, u3, u1, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 (SemilinearEquivClass.instSemilinearMapClass.{u3, u3, u1, u2, max u2 u1} R R M' M (LinearEquiv.{u3, u3, u1, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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, u1, u2} R R M' M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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.symm.{u3, u3, u2, u1} R R M M' (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) f)) v))
+Case conversion may be inaccurate. Consider using '#align basis.det_map Basis.det_mapₓ'. -/
@[simp]
theorem Basis.det_map (b : Basis ι R M) (f : M ≃ₗ[R] M') (v : ι → M') :
(b.map f).det v = b.det (f.symm ∘ v) := by
rw [Basis.det_apply, Basis.toMatrix_map, Basis.det_apply]
#align basis.det_map Basis.det_map
+/- warning: basis.det_map' -> Basis.det_map' is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u3}} [_inst_4 : AddCommGroup.{u3} M'] [_inst_5 : Module.{u1, u3} R M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4)] {ι : Type.{u4}} [_inst_6 : DecidableEq.{succ u4} ι] [_inst_7 : Fintype.{u4} ι] (b : Basis.{u4, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (f : LinearEquiv.{u1, u1, u2, u3} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5), Eq.{max (succ u3) (succ u1) (succ u4)} (AlternatingMap.{u1, u3, u1, u4} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u3, u4} R _inst_1 M' _inst_4 _inst_5 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 (Basis.map.{u4, u1, u2, u3} ι R M M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 b f)) (AlternatingMap.compLinearMap.{u1, u2, u1, u4, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι M' (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_5 (Basis.det.{u1, u2, u4} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) ((fun (a : Sort.{max (succ u3) (succ u2)}) (b : Sort.{max (succ u3) (succ u2)}) [self : HasLiftT.{max (succ u3) (succ u2), max (succ u3) (succ u2)} a b] => self.0) (LinearEquiv.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (LinearMap.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (HasLiftT.mk.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearEquiv.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (LinearMap.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (CoeTCₓ.coe.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearEquiv.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (LinearMap.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (coeBase.{max (succ u3) (succ u2), max (succ u3) (succ u2)} (LinearEquiv.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (LinearMap.{u1, u1, u3, u2} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M' M (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3) (LinearEquiv.LinearMap.hasCoe.{u1, u1, u3, u2} R R M' M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))))) (LinearEquiv.symm.{u1, u1, u2, u3} R R M M' (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) f)))
+but is expected to have type
+ forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {M' : Type.{u1}} [_inst_4 : AddCommGroup.{u1} M'] [_inst_5 : Module.{u3, u1} R M' (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4)] {ι : Type.{u4}} [_inst_6 : DecidableEq.{succ u4} ι] [_inst_7 : Fintype.{u4} ι] (b : Basis.{u4, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (f : LinearEquiv.{u3, u3, u2, u1} 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M M' (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5), Eq.{max (max (succ u3) (succ u1)) (succ u4)} (AlternatingMap.{u3, u1, u3, u4} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (Basis.det.{u3, u1, u4} R _inst_1 M' _inst_4 _inst_5 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 (Basis.map.{u4, u3, u2, u1} ι R M M' (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 b f)) (AlternatingMap.compLinearMap.{u3, u2, u3, u4, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι M' (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_5 (Basis.det.{u3, u2, u4} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 b) (LinearEquiv.toLinearMap.{u3, u3, u1, 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 (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) M' M (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_5 _inst_3 (LinearEquiv.symm.{u3, u3, u2, u1} R R M M' (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M' _inst_4) _inst_3 _inst_5 (RingHom.id.{u3} R (NonAssocRing.toNonAssocSemiring.{u3} R (Ring.toNonAssocRing.{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))) f)))
+Case conversion may be inaccurate. Consider using '#align basis.det_map' Basis.det_map'ₓ'. -/
theorem Basis.det_map' (b : Basis ι R M) (f : M ≃ₗ[R] M') :
(b.map f).det = b.det.compLinearMap f.symm :=
AlternatingMap.ext <| b.det_map f
#align basis.det_map' Basis.det_map'
+/- warning: pi.basis_fun_det -> Pi.basisFun_det is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {ι : Type.{u2}} [_inst_6 : DecidableEq.{succ u2} ι] [_inst_7 : Fintype.{u2} ι], Eq.{max (succ (max u2 u1)) (succ u1) (succ u2)} (AlternatingMap.{u1, max u2 u1, u1, u2} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (j : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Pi.Function.module.{u2, u1, u1} ι R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, max u2 u1, u2} R _inst_1 (ι -> R) (Pi.addCommGroup.{u2, u1} ι (fun (j : ι) => R) (fun (i : ι) => NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Pi.Function.module.{u2, u1, u1} ι R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 (Pi.basisFun.{u1, u2} R ι (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) _inst_7)) (Matrix.detRowAlternating.{u1, u2} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1)
+but is expected to have type
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι], Eq.{max (succ u2) (succ u1)} (AlternatingMap.{u2, max u2 u1, u2, u1} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (ι -> R) (AddCommGroup.toAddCommMonoid.{max u2 u1} (ι -> R) (Pi.addCommGroup.{u1, u2} ι (fun (j : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (Pi.module.{u1, u2, u2} ι (fun (x._@.Mathlib.LinearAlgebra.StdBasis._hyg.3573 : ι) => R) R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (Basis.det.{u2, max u2 u1, u1} R _inst_1 (ι -> R) (Pi.addCommGroup.{u1, u2} ι (fun (j : ι) => R) (fun (i : ι) => Ring.toAddCommGroup.{u2} R (CommRing.toRing.{u2} R _inst_1))) (Pi.module.{u1, u2, u2} ι (fun (x._@.Mathlib.LinearAlgebra.StdBasis._hyg.3573 : ι) => R) R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (fun (i : ι) => Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 (Pi.basisFun.{u2, u1} R ι (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) _inst_7)) (Matrix.detRowAlternating.{u2, u1} ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 R _inst_1)
+Case conversion may be inaccurate. Consider using '#align pi.basis_fun_det Pi.basisFun_detₓ'. -/
@[simp]
theorem Pi.basisFun_det : (Pi.basisFun R ι).det = Matrix.detRowAlternating :=
by
@@ -661,6 +1039,12 @@ theorem Pi.basisFun_det : (Pi.basisFun R ι).det = Matrix.detRowAlternating :=
rw [Basis.det_apply, Basis.coePiBasisFun.toMatrix_eq_transpose, det_transpose]
#align pi.basis_fun_det Pi.basisFun_det
+/- warning: basis.det_smul_mk_coord_eq_det_update -> Basis.det_smul_mk_coord_eq_det_update is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) {v : ι -> M} (hli : LinearIndependent.{u3, u1, u2} ι R M v (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (hsp : LE.le.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (Preorder.toLE.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (PartialOrder.toPreorder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (CompleteSemilatticeInf.toPartialOrder.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (CompleteLattice.toCompleteSemilatticeInf.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (Submodule.completeLattice.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3))))) (Top.top.{u2} (Submodule.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (Submodule.hasTop.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) (Submodule.span.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 (Set.range.{u2, succ u3} M ι v))) (i : ι), Eq.{succ (max u2 u1)} (LinearMap.{u1, u1, u2, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M R (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) _inst_3 (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (SMul.smul.{u1, max u2 u1} R (LinearMap.{u1, u1, u2, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) M R (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) _inst_3 (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (LinearMap.hasSmul.{u1, u1, u1, u2, u1} R R R M R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))))) _inst_3 (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Module.toDistribMulAction.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (smulCommClass_self.{u1, u1} R R (CommRing.toCommMonoid.{u1} R _inst_1) (Monoid.toMulAction.{u1} R (CommMonoid.toMonoid.{u1} R (CommRing.toCommMonoid.{u1} R _inst_1))))) (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v) (Basis.coord.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 (Basis.mk.{u3, u1, u2} ι R M v (CommRing.toRing.{u1} R _inst_1) _inst_2 _inst_3 hli hsp) i)) (MultilinearMap.toLinearMap.{u1, u2, u1, u3} R ι (fun (i : ι) => M) R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (fun (i : ι) => _inst_3) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) (AlternatingMap.toMultilinearMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e)) (fun (a : ι) (b : ι) => _inst_6 a b) v i)
+but is expected to have type
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) {v : ι -> M} (hli : LinearIndependent.{u3, u2, u1} ι R M v (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (hsp : LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Submodule.completeLattice.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3))))) (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (Submodule.instTopSubmodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3)) (Submodule.span.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 (Set.range.{u1, succ u3} M ι v))) (i : ι), Eq.{max (succ u2) (succ u1)} (LinearMap.{u2, u2, 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)))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _inst_3 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (HSMul.hSMul.{u2, max u2 u1, max u2 u1} R (LinearMap.{u2, u2, 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)))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _inst_3 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (LinearMap.{u2, u2, 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)))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _inst_3 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (instHSMul.{u2, max u2 u1} R (LinearMap.{u2, u2, 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)))) M R (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _inst_3 (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (LinearMap.instSMulLinearMap.{u2, u2, u2, u1, u2} R R R M R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) _inst_3 (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)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (Module.toDistribMulAction.{u2, u2} R R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (smulCommClass_self.{u2, u2} R R (CommRing.toCommMonoid.{u2} R _inst_1) (MulActionWithZero.toMulAction.{u2, u2} R R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) v) (Basis.coord.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 (Basis.mk.{u3, u2, u1} ι R M v (CommRing.toRing.{u2} R _inst_1) _inst_2 _inst_3 hli hsp) i)) (MultilinearMap.toLinearMap.{u2, u1, u2, u3} R ι (fun (i : ι) => M) R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (fun (i : ι) => _inst_3) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (AlternatingMap.toMultilinearMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e)) (fun (a : ι) (b : ι) => _inst_6 a b) v i)
+Case conversion may be inaccurate. Consider using '#align basis.det_smul_mk_coord_eq_det_update Basis.det_smul_mk_coord_eq_det_updateₓ'. -/
/-- If we fix a background basis `e`, then for any other basis `v`, we can characterise the
coordinates provided by `v` in terms of determinants relative to `e`. -/
theorem Basis.det_smul_mk_coord_eq_det_update {v : ι → M} (hli : LinearIndependent R v)
@@ -678,6 +1062,12 @@ theorem Basis.det_smul_mk_coord_eq_det_update {v : ι → M} (hli : LinearIndepe
exact e.det.map_eq_zero_of_eq _ (by simp [hik, Function.update_apply]) hik
#align basis.det_smul_mk_coord_eq_det_update Basis.det_smul_mk_coord_eq_det_update
+/- warning: basis.det_units_smul -> Basis.det_unitsSMul is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (w : ι -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))), Eq.{max (succ u2) (succ u1) (succ u3)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 (Basis.unitsSMul.{u3, u1, u2} ι R M (CommRing.toRing.{u1} R _inst_1) _inst_2 _inst_3 e w)) (SMul.smul.{u1, max u2 u1 u3} R (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (AlternatingMap.smul.{u1, u2, u1, u3, u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (Module.toDistribMulAction.{u1, u1} R R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)))) (smulCommClass_self.{u1, u1} R R (CommRing.toCommMonoid.{u1} R _inst_1) (Monoid.toMulAction.{u1} R (CommMonoid.toMonoid.{u1} R (CommRing.toCommMonoid.{u1} R _inst_1))))) ((fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (HasLiftT.mk.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (CoeTCₓ.coe.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (coeBase.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (Units.hasCoe.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (Inv.inv.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Units.hasInv.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Finset.prod.{u1, u3} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι (CommGroup.toCommMonoid.{u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) (Units.instCommGroupUnitsToMonoid.{u1} R (CommRing.toCommMonoid.{u1} R _inst_1))) (Finset.univ.{u3} ι _inst_7) (fun (i : ι) => w i)))) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e))
+but is expected to have type
+ forall {R : Type.{u2}} [_inst_1 : CommRing.{u2} R] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] [_inst_3 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u2, u1} ι R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3) (w : ι -> (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))), Eq.{max (max (succ u2) (succ u1)) (succ u3)} (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 (Basis.unitsSMul.{u3, u2, u1} ι R M (CommRing.toRing.{u2} R _inst_1) _inst_2 _inst_3 e w)) (HSMul.hSMul.{u2, max (max u2 u1) u3, max (max u2 u1) u3} R (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (instHSMul.{u2, max (max u2 u1) u3} R (AlternatingMap.{u2, u1, u2, u3} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι) (AlternatingMap.smul.{u2, u1, u2, u3, u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) ι R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (Module.toDistribMulAction.{u2, u2} R R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (smulCommClass_self.{u2, u2} R R (CommRing.toCommMonoid.{u2} R _inst_1) (MulActionWithZero.toMulAction.{u2, u2} R R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))) (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_1))) (MonoidWithZero.toMulActionWithZero.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))))))) (Units.val.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1)))) (Inv.inv.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Units.instInv.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Finset.prod.{u2, u3} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) ι (CommGroup.toCommMonoid.{u2} (Units.{u2} R (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_1))))) (Units.instCommGroupUnitsToMonoid.{u2} R (CommRing.toCommMonoid.{u2} R _inst_1))) (Finset.univ.{u3} ι _inst_7) (fun (i : ι) => w i)))) (Basis.det.{u2, u1, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e))
+Case conversion may be inaccurate. Consider using '#align basis.det_units_smul Basis.det_unitsSMulₓ'. -/
/-- If a basis is multiplied columnwise by scalars `w : ι → Rˣ`, then the determinant with respect
to this basis is multiplied by the product of the inverse of these scalars. -/
theorem Basis.det_unitsSMul (e : Basis ι R M) (w : ι → Rˣ) :
@@ -692,12 +1082,24 @@ theorem Basis.det_unitsSMul (e : Basis ι R M) (w : ι → Rˣ) :
simp [← Finset.prod_inv_distrib]
#align basis.det_units_smul Basis.det_unitsSMul
+/- warning: basis.det_units_smul_self -> Basis.det_unitsSMul_self is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (w : ι -> (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))), Eq.{succ u1} R (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (fun (_x : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u1) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) (Basis.unitsSMul.{u3, u1, u2} ι R M (CommRing.toRing.{u1} R _inst_1) _inst_2 _inst_3 e w))) (Finset.prod.{u1, u3} R ι (CommRing.toCommMonoid.{u1} R _inst_1) (Finset.univ.{u3} ι _inst_7) (fun (i : ι) => (fun (a : Type.{u1}) (b : Type.{u1}) [self : HasLiftT.{succ u1, succ u1} a b] => self.0) (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (HasLiftT.mk.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (CoeTCₓ.coe.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (coeBase.{succ u1, succ u1} (Units.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1))) R (Units.hasCoe.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)))))) (w i)))
+but is expected to have type
+ forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] (e : Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (w : ι -> (Units.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))))), Eq.{succ u3} R (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u1), succ u3} (AlternatingMap.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (Basis.det.{u3, u2, u1} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (Basis.unitsSMul.{u1, u3, u2} ι R M (CommRing.toRing.{u3} R _inst_1) _inst_2 _inst_3 e w))) (Finset.prod.{u3, u1} R ι (CommRing.toCommMonoid.{u3} R _inst_1) (Finset.univ.{u1} ι _inst_7) (fun (i : ι) => Units.val.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (w i)))
+Case conversion may be inaccurate. Consider using '#align basis.det_units_smul_self Basis.det_unitsSMul_selfₓ'. -/
/-- The determinant of a basis constructed by `units_smul` is the product of the given units. -/
@[simp]
theorem Basis.det_unitsSMul_self (w : ι → Rˣ) : e.det (e.units_smul w) = ∏ i, w i := by
simp [Basis.det_apply]
#align basis.det_units_smul_self Basis.det_unitsSMul_self
+/- warning: basis.det_is_unit_smul -> Basis.det_isUnitSMul is a dubious translation:
+lean 3 declaration is
+ forall {R : Type.{u1}} [_inst_1 : CommRing.{u1} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u3}} [_inst_6 : DecidableEq.{succ u3} ι] [_inst_7 : Fintype.{u3} ι] (e : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) {w : ι -> R} (hw : forall (i : ι), IsUnit.{u1} R (Ring.toMonoid.{u1} R (CommRing.toRing.{u1} R _inst_1)) (w i)), Eq.{succ u1} R (coeFn.{max (succ u2) (succ u1) (succ u3), max (max (succ u3) (succ u2)) (succ u1)} (AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (fun (_x : AlternatingMap.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) => (ι -> M) -> R) (AlternatingMap.coeFun.{u1, u2, u1, u3} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (AddCommGroup.toAddCommMonoid.{u1} R (NonUnitalNonAssocRing.toAddCommGroup.{u1} R (NonAssocRing.toNonUnitalNonAssocRing.{u1} R (Ring.toNonAssocRing.{u1} R (CommRing.toRing.{u1} R _inst_1))))) (Semiring.toModule.{u1} R (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1))) ι) (Basis.det.{u1, u2, u3} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (coeFn.{max (succ u3) (succ u1) (succ u2), max (succ u3) (succ u2)} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (fun (_x : Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) => ι -> M) (FunLike.hasCoeToFun.{max (succ u3) (succ u1) (succ u2), succ u3, succ u2} (Basis.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => M) (Basis.funLike.{u3, u1, u2} ι R M (Ring.toSemiring.{u1} R (CommRing.toRing.{u1} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) (Basis.isUnitSMul.{u3, u1, u2} ι R M (CommRing.toRing.{u1} R _inst_1) _inst_2 _inst_3 e (fun (i : ι) => w i) hw))) (Finset.prod.{u1, u3} R ι (CommRing.toCommMonoid.{u1} R _inst_1) (Finset.univ.{u3} ι _inst_7) (fun (i : ι) => w i))
+but is expected to have type
+ forall {R : Type.{u3}} [_inst_1 : CommRing.{u3} R] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {ι : Type.{u1}} [_inst_6 : DecidableEq.{succ u1} ι] [_inst_7 : Fintype.{u1} ι] (e : Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) {w : ι -> R} (hw : forall (i : ι), IsUnit.{u3} R (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)))) (w i)), Eq.{succ u3} R (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u1), succ u3} (AlternatingMap.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (ι -> M) (fun (_x : ι -> M) => R) (AlternatingMap.funLike.{u3, u2, u3, u1} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3 R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_1))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1))) ι) (Basis.det.{u3, u2, u1} R _inst_1 M _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_6 a b) _inst_7 e) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u1, succ u2} (Basis.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) ι (fun (_x : ι) => (fun (x._@.Mathlib.LinearAlgebra.Basis._hyg.548 : ι) => M) _x) (Basis.funLike.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_1)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (Basis.isUnitSMul.{u1, u3, u2} ι R M (CommRing.toRing.{u3} R _inst_1) _inst_2 _inst_3 e (fun (i : ι) => w i) hw))) (Finset.prod.{u3, u1} R ι (CommRing.toCommMonoid.{u3} R _inst_1) (Finset.univ.{u1} ι _inst_7) (fun (i : ι) => w i))
+Case conversion may be inaccurate. Consider using '#align basis.det_is_unit_smul Basis.det_isUnitSMulₓ'. -/
/-- The determinant of a basis constructed by `is_unit_smul` is the product of the given units. -/
@[simp]
theorem Basis.det_isUnitSMul {w : ι → R} (hw : ∀ i, IsUnit (w i)) :
mathlib commit https://github.com/leanprover-community/mathlib/commit/fa78268d4d77cb2b2fbc89f0527e2e7807763780
@@ -658,7 +658,7 @@ theorem Basis.det_map' (b : Basis ι R M) (f : M ≃ₗ[R] M') :
theorem Pi.basisFun_det : (Pi.basisFun R ι).det = Matrix.detRowAlternating :=
by
ext M
- rw [Basis.det_apply, Basis.CoePiBasisFun.toMatrix_eq_transpose, det_transpose]
+ rw [Basis.det_apply, Basis.coePiBasisFun.toMatrix_eq_transpose, det_transpose]
#align pi.basis_fun_det Pi.basisFun_det
/-- If we fix a background basis `e`, then for any other basis `v`, we can characterise the
@@ -680,7 +680,7 @@ theorem Basis.det_smul_mk_coord_eq_det_update {v : ι → M} (hli : LinearIndepe
/-- If a basis is multiplied columnwise by scalars `w : ι → Rˣ`, then the determinant with respect
to this basis is multiplied by the product of the inverse of these scalars. -/
-theorem Basis.det_unitsSmul (e : Basis ι R M) (w : ι → Rˣ) :
+theorem Basis.det_unitsSMul (e : Basis ι R M) (w : ι → Rˣ) :
(e.units_smul w).det = (↑(∏ i, w i)⁻¹ : R) • e.det :=
by
ext f
@@ -690,18 +690,18 @@ theorem Basis.det_unitsSmul (e : Basis ι R M) (w : ι → Rˣ) :
simp only [e.repr_units_smul]
convert Matrix.det_mul_column (fun i => (↑(w i)⁻¹ : R)) fun i j => e.repr (f j) i
simp [← Finset.prod_inv_distrib]
-#align basis.det_units_smul Basis.det_unitsSmul
+#align basis.det_units_smul Basis.det_unitsSMul
/-- The determinant of a basis constructed by `units_smul` is the product of the given units. -/
@[simp]
-theorem Basis.det_unitsSmul_self (w : ι → Rˣ) : e.det (e.units_smul w) = ∏ i, w i := by
+theorem Basis.det_unitsSMul_self (w : ι → Rˣ) : e.det (e.units_smul w) = ∏ i, w i := by
simp [Basis.det_apply]
-#align basis.det_units_smul_self Basis.det_unitsSmul_self
+#align basis.det_units_smul_self Basis.det_unitsSMul_self
/-- The determinant of a basis constructed by `is_unit_smul` is the product of the given units. -/
@[simp]
-theorem Basis.det_isUnitSmul {w : ι → R} (hw : ∀ i, IsUnit (w i)) :
- e.det (e.isUnitSmul hw) = ∏ i, w i :=
- e.det_unitsSmul_self _
-#align basis.det_is_unit_smul Basis.det_isUnitSmul
+theorem Basis.det_isUnitSMul {w : ι → R} (hw : ∀ i, IsUnit (w i)) :
+ e.det (e.isUnitSMul hw) = ∏ i, w i :=
+ e.det_unitsSMul_self _
+#align basis.det_is_unit_smul Basis.det_isUnitSMul
mathlib commit https://github.com/leanprover-community/mathlib/commit/e05ead7993520a432bec94ac504842d90707ad63
@@ -4,10 +4,11 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: Johannes Hölzl, Patrick Massot, Casper Putz, Anne Baanen
! This file was ported from Lean 3 source module linear_algebra.determinant
-! leanprover-community/mathlib commit ce11c3c2a285bbe6937e26d9792fda4e51f3fe1a
+! leanprover-community/mathlib commit b1c23399f01266afe392a0d8f71f599a0dad4f7b
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
+import Mathbin.LinearAlgebra.FiniteDimensional
import Mathbin.LinearAlgebra.GeneralLinearGroup
import Mathbin.LinearAlgebra.Matrix.Reindex
import Mathbin.Tactic.FieldSimp
mathlib commit https://github.com/leanprover-community/mathlib/commit/ce11c3c2a285bbe6937e26d9792fda4e51f3fe1a
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: Johannes Hölzl, Patrick Massot, Casper Putz, Anne Baanen
! This file was ported from Lean 3 source module linear_algebra.determinant
-! leanprover-community/mathlib commit 2705404e701abc6b3127da906f40bae062a169c9
+! leanprover-community/mathlib commit ce11c3c2a285bbe6937e26d9792fda4e51f3fe1a
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
@@ -529,11 +529,13 @@ def Basis.det : AlternatingMap R M R ι
where
toFun v := det (e.toMatrix v)
map_add' := by
- intro v i x y
- simp only [e.to_matrix_update, LinearEquiv.map_add]
- apply det_update_column_add
+ intro inst v i x y
+ cases Subsingleton.elim inst ‹_›
+ simp only [e.to_matrix_update, LinearEquiv.map_add, Finsupp.coe_add]
+ exact det_update_column_add _ _ _ _
map_smul' := by
- intro u i c x
+ intro inst u i c x
+ cases Subsingleton.elim inst ‹_›
simp only [e.to_matrix_update, Algebra.id.smul_eq_mul, LinearEquiv.map_smul]
apply det_update_column_smul
map_eq_zero_of_eq' := by
@@ -597,15 +599,16 @@ theorem AlternatingMap.eq_smul_basis_det (f : AlternatingMap R M R ι) : f = f e
#align alternating_map.eq_smul_basis_det AlternatingMap.eq_smul_basis_det
@[simp]
-theorem AlternatingMap.map_basis_eq_zero_iff {ι : Type _} [DecidableEq ι] [Finite ι]
- (e : Basis ι R M) (f : AlternatingMap R M R ι) : f e = 0 ↔ f = 0 :=
+theorem AlternatingMap.map_basis_eq_zero_iff {ι : Type _} [Finite ι] (e : Basis ι R M)
+ (f : AlternatingMap R M R ι) : f e = 0 ↔ f = 0 :=
⟨fun h => by
cases nonempty_fintype ι
+ letI := Classical.decEq ι
simpa [h] using f.eq_smul_basis_det e, fun h => h.symm ▸ AlternatingMap.zero_apply _⟩
#align alternating_map.map_basis_eq_zero_iff AlternatingMap.map_basis_eq_zero_iff
-theorem AlternatingMap.map_basis_ne_zero_iff {ι : Type _} [DecidableEq ι] [Finite ι]
- (e : Basis ι R M) (f : AlternatingMap R M R ι) : f e ≠ 0 ↔ f ≠ 0 :=
+theorem AlternatingMap.map_basis_ne_zero_iff {ι : Type _} [Finite ι] (e : Basis ι R M)
+ (f : AlternatingMap R M R ι) : f e ≠ 0 ↔ f ≠ 0 :=
not_congr <| f.map_basis_eq_zero_iff e
#align alternating_map.map_basis_ne_zero_iff AlternatingMap.map_basis_ne_zero_iff
mathlib commit https://github.com/leanprover-community/mathlib/commit/3180fab693e2cee3bff62675571264cb8778b212
@@ -670,7 +670,7 @@ theorem Basis.det_smul_mk_coord_eq_det_update {v : ι → M} (hli : LinearIndepe
MultilinearMap.toLinearMap_apply]
· rw [Basis.mk_coord_apply_eq, mul_one, update_eq_self]
congr
- · rw [Basis.mk_coord_apply_ne hik, mul_zero, eq_comm]
+ · rw [Basis.mk_coord_apply_ne hik, MulZeroClass.mul_zero, eq_comm]
exact e.det.map_eq_zero_of_eq _ (by simp [hik, Function.update_apply]) hik
#align basis.det_smul_mk_coord_eq_det_update Basis.det_smul_mk_coord_eq_det_update
mathlib commit https://github.com/leanprover-community/mathlib/commit/9da1b3534b65d9661eb8f42443598a92bbb49211
@@ -244,7 +244,7 @@ theorem det_toLin' (f : Matrix ι ι R) : LinearMap.det f.toLin' = f.det := by
/-- To show `P f.det` it suffices to consider `P (to_matrix _ _ f).det` and `P 1`. -/
@[elab_as_elim]
-theorem detCases [DecidableEq M] {P : A → Prop} (f : M →ₗ[A] M)
+theorem det_cases [DecidableEq M] {P : A → Prop} (f : M →ₗ[A] M)
(hb : ∀ (s : Finset M) (b : Basis s A M), P (toMatrix b b f).det) (h1 : P 1) : P f.det :=
by
unfold LinearMap.det
@@ -252,7 +252,7 @@ theorem detCases [DecidableEq M] {P : A → Prop} (f : M →ₗ[A] M)
· convert hb _ h.some_spec.some
apply det_aux_def'
· exact h1
-#align linear_map.det_cases LinearMap.detCases
+#align linear_map.det_cases LinearMap.det_cases
@[simp]
theorem det_comp (f g : M →ₗ[A] M) : (f.comp g).det = f.det * g.det :=
@@ -309,7 +309,7 @@ theorem det_eq_one_of_finrank_eq_zero {𝕜 : Type _} [Field 𝕜] {M : Type _}
[Module 𝕜 M] (h : FiniteDimensional.finrank 𝕜 M = 0) (f : M →ₗ[𝕜] M) :
(f : M →ₗ[𝕜] M).det = 1 := by
classical
- refine' @LinearMap.detCases M _ 𝕜 _ _ _ (fun t => t = 1) f _ rfl
+ refine' @LinearMap.det_cases M _ 𝕜 _ _ _ (fun t => t = 1) f _ rfl
intro s b
have : IsEmpty s := by
rw [← Fintype.card_eq_zero_iff]
mathlib commit https://github.com/leanprover-community/mathlib/commit/bd9851ca476957ea4549eb19b40e7b5ade9428cc
.. in equivOfPiLEquivPi, coePiBasisFun.toMatrix_eq_transpose, vecMul_surjective_iff_exists_left_inverse, and mulVec_surjective_iff_exists_right_inverse
@@ -55,15 +55,18 @@ variable (e : Basis ι R M)
section Conjugate
variable {A : Type*} [CommRing A]
-variable {m n : Type*} [Fintype m] [Fintype n]
+variable {m n : Type*}
/-- If `R^m` and `R^n` are linearly equivalent, then `m` and `n` are also equivalent. -/
-def equivOfPiLEquivPi {R : Type*} [CommRing R] [Nontrivial R] (e : (m → R) ≃ₗ[R] n → R) : m ≃ n :=
+def equivOfPiLEquivPi {R : Type*} [Finite m] [Finite n] [CommRing R] [Nontrivial R]
+ (e : (m → R) ≃ₗ[R] n → R) : m ≃ n :=
Basis.indexEquiv (Basis.ofEquivFun e.symm) (Pi.basisFun _ _)
#align equiv_of_pi_lequiv_pi equivOfPiLEquivPi
namespace Matrix
+variable [Fintype m] [Fintype n]
+
/-- If `M` and `M'` are each other's inverse matrices, they are square matrices up to
equivalence of types. -/
def indexEquivOfInv [Nontrivial A] [DecidableEq m] [DecidableEq n] {M : Matrix m n A}
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)
@@ -47,19 +47,14 @@ open BigOperators Matrix LinearMap Submodule Set Function
universe u v w
variable {R : Type*} [CommRing R]
-
variable {M : Type*} [AddCommGroup M] [Module R M]
-
variable {M' : Type*} [AddCommGroup M'] [Module R M']
-
variable {ι : Type*} [DecidableEq ι] [Fintype ι]
-
variable (e : Basis ι R M)
section Conjugate
variable {A : Type*} [CommRing A]
-
variable {m n : Type*} [Fintype m] [Fintype n]
/-- If `R^m` and `R^n` are linearly equivalent, then `m` and `n` are also equivalent. -/
@@ -111,7 +106,6 @@ namespace LinearMap
variable {A : Type*} [CommRing A] [Module A M]
-
variable {κ : Type*} [Fintype κ]
/-- The determinant of `LinearMap.toMatrix` does not depend on the choice of basis. -/
@@ -504,7 +504,7 @@ theorem LinearMap.associated_det_comp_equiv {N : Type*} [AddCommGroup N] [Module
/-- The determinant of a family of vectors with respect to some basis, as an alternating
multilinear map. -/
-nonrec def Basis.det : M [Λ^ι]→ₗ[R] R where
+nonrec def Basis.det : M [⋀^ι]→ₗ[R] R where
toFun v := det (e.toMatrix v)
map_add' := by
intro inst v i x y
@@ -570,7 +570,7 @@ theorem Basis.isUnit_det (e' : Basis ι R M) : IsUnit (e.det e') :=
/-- Any alternating map to `R` where `ι` has the cardinality of a basis equals the determinant
map with respect to that basis, multiplied by the value of that alternating map on that basis. -/
-theorem AlternatingMap.eq_smul_basis_det (f : M [Λ^ι]→ₗ[R] R) : f = f e • e.det := by
+theorem AlternatingMap.eq_smul_basis_det (f : M [⋀^ι]→ₗ[R] R) : f = f e • e.det := by
refine' Basis.ext_alternating e fun i h => _
let σ : Equiv.Perm ι := Equiv.ofBijective i (Finite.injective_iff_bijective.1 h)
change f (e ∘ σ) = (f e • e.det) (e ∘ σ)
@@ -579,7 +579,7 @@ theorem AlternatingMap.eq_smul_basis_det (f : M [Λ^ι]→ₗ[R] R) : f = f e
@[simp]
theorem AlternatingMap.map_basis_eq_zero_iff {ι : Type*} [Finite ι] (e : Basis ι R M)
- (f : M [Λ^ι]→ₗ[R] R) : f e = 0 ↔ f = 0 :=
+ (f : M [⋀^ι]→ₗ[R] R) : f e = 0 ↔ f = 0 :=
⟨fun h => by
cases nonempty_fintype ι
letI := Classical.decEq ι
@@ -588,7 +588,7 @@ theorem AlternatingMap.map_basis_eq_zero_iff {ι : Type*} [Finite ι] (e : Basis
#align alternating_map.map_basis_eq_zero_iff AlternatingMap.map_basis_eq_zero_iff
theorem AlternatingMap.map_basis_ne_zero_iff {ι : Type*} [Finite ι] (e : Basis ι R M)
- (f : M [Λ^ι]→ₗ[R] R) : f e ≠ 0 ↔ f ≠ 0 :=
+ (f : M [⋀^ι]→ₗ[R] R) : f e ≠ 0 ↔ f ≠ 0 :=
not_congr <| f.map_basis_eq_zero_iff e
#align alternating_map.map_basis_ne_zero_iff AlternatingMap.map_basis_ne_zero_iff
@@ -553,7 +553,7 @@ theorem is_basis_iff_det {v : ι → M} :
rw [e.det_apply]
convert LinearEquiv.isUnit_det (LinearEquiv.refl R M) v' e using 2
ext i j
- simp
+ simp [v']
· intro h
rw [Basis.det_apply, Basis.toMatrix_eq_toMatrix_constr] at h
set v' := Basis.map e (LinearEquiv.ofIsUnitDet h) with v'_def
@@ -669,7 +669,8 @@ theorem Basis.det_unitsSMul (e : Basis ι R M) (w : ι → Rˣ) :
(↑(∏ i, w i)⁻¹ : R) • Matrix.det fun i j => e.repr (f j) i
simp only [e.repr_unitsSMul]
convert Matrix.det_mul_column (fun i => (↑(w i)⁻¹ : R)) fun i j => e.repr (f j) i
- simp only [← Finset.prod_inv_distrib] -- Porting note: was `simp [← Finset.prod_inv_distrib]`
+ -- porting note (#10745): was `simp [← Finset.prod_inv_distrib]`
+ simp only [← Finset.prod_inv_distrib]
norm_cast
#align basis.det_units_smul Basis.det_unitsSMul
Function.left_id and Function.comp.left_id into Function.id_comp.Function.right_id and Function.comp.right_id into Function.comp_id.Function.comp_const_right and Function.comp_const into Function.comp_const, use explicit arguments.Function.const_comp to Mathlib.Init.Function, use explicit arguments.@@ -623,7 +623,7 @@ theorem Basis.det_reindex' {ι' : Type*} [Fintype ι'] [DecidableEq ι'] (b : Ba
theorem Basis.det_reindex_symm {ι' : Type*} [Fintype ι'] [DecidableEq ι'] (b : Basis ι R M)
(v : ι → M) (e : ι' ≃ ι) : (b.reindex e.symm).det (v ∘ e) = b.det v := by
- rw [Basis.det_reindex, Function.comp.assoc, e.self_comp_symm, Function.comp.right_id]
+ rw [Basis.det_reindex, Function.comp.assoc, e.self_comp_symm, Function.comp_id]
#align basis.det_reindex_symm Basis.det_reindex_symm
@[simp]
AlternatingMap (#8697)
Use M [Λ^ι]→ₗ[R] N for AlternatingMap R M N ι,
similarly to the existing notation M [Λ^ι]→L[R] N
for ContinuousAlternatingMap R M N ι.
@@ -504,7 +504,7 @@ theorem LinearMap.associated_det_comp_equiv {N : Type*} [AddCommGroup N] [Module
/-- The determinant of a family of vectors with respect to some basis, as an alternating
multilinear map. -/
-nonrec def Basis.det : AlternatingMap R M R ι where
+nonrec def Basis.det : M [Λ^ι]→ₗ[R] R where
toFun v := det (e.toMatrix v)
map_add' := by
intro inst v i x y
@@ -570,7 +570,7 @@ theorem Basis.isUnit_det (e' : Basis ι R M) : IsUnit (e.det e') :=
/-- Any alternating map to `R` where `ι` has the cardinality of a basis equals the determinant
map with respect to that basis, multiplied by the value of that alternating map on that basis. -/
-theorem AlternatingMap.eq_smul_basis_det (f : AlternatingMap R M R ι) : f = f e • e.det := by
+theorem AlternatingMap.eq_smul_basis_det (f : M [Λ^ι]→ₗ[R] R) : f = f e • e.det := by
refine' Basis.ext_alternating e fun i h => _
let σ : Equiv.Perm ι := Equiv.ofBijective i (Finite.injective_iff_bijective.1 h)
change f (e ∘ σ) = (f e • e.det) (e ∘ σ)
@@ -579,7 +579,7 @@ theorem AlternatingMap.eq_smul_basis_det (f : AlternatingMap R M R ι) : f = f e
@[simp]
theorem AlternatingMap.map_basis_eq_zero_iff {ι : Type*} [Finite ι] (e : Basis ι R M)
- (f : AlternatingMap R M R ι) : f e = 0 ↔ f = 0 :=
+ (f : M [Λ^ι]→ₗ[R] R) : f e = 0 ↔ f = 0 :=
⟨fun h => by
cases nonempty_fintype ι
letI := Classical.decEq ι
@@ -588,7 +588,7 @@ theorem AlternatingMap.map_basis_eq_zero_iff {ι : Type*} [Finite ι] (e : Basis
#align alternating_map.map_basis_eq_zero_iff AlternatingMap.map_basis_eq_zero_iff
theorem AlternatingMap.map_basis_ne_zero_iff {ι : Type*} [Finite ι] (e : Basis ι R M)
- (f : AlternatingMap R M R ι) : f e ≠ 0 ↔ f ≠ 0 :=
+ (f : M [Λ^ι]→ₗ[R] R) : f e ≠ 0 ↔ f ≠ 0 :=
not_congr <| f.map_basis_eq_zero_iff e
#align alternating_map.map_basis_ne_zero_iff AlternatingMap.map_basis_ne_zero_iff
This is the supremum of
along with some minor fixes from failures on nightly-testing as Mathlib master is merged into it.
Note that some PRs for changes that are already compatible with the current toolchain and will be necessary have already been split out: #8380.
I am hopeful that in future we will be able to progressively merge adaptation PRs into a bump/v4.X.0 branch, so we never end up with a "big merge" like this. However one of these adaptation PRs (#8056) predates my new scheme for combined CI, and it wasn't possible to keep that PR viable in the meantime.
In particular this includes adjustments for the Lean PRs
We can get rid of all the
local macro_rules | `($x ^ $y) => `(HPow.hPow $x $y) -- Porting note: See issue [lean4#2220](https://github.com/leanprover/lean4/pull/2220)
macros across Mathlib (and in any projects that want to write natural number powers of reals).
Changes the default behaviour of simp to (config := {decide := false}). This makes simp (and consequentially norm_num) less powerful, but also more consistent, and less likely to blow up in long failures. This requires a variety of changes: changing some previously by simp or norm_num to decide or rfl, or adding (config := {decide := true}).
This changed the behaviour of simp so that simp [f] will only unfold "fully applied" occurrences of f. The old behaviour can be recovered with simp (config := { unfoldPartialApp := true }). We may in future add a syntax for this, e.g. simp [!f]; please provide feedback! In the meantime, we have made the following changes:
(config := { unfoldPartialApp := true }) in some places, to recover the old behaviour@[eqns] to manually adjust the equation lemmas for a particular definition, recovering the old behaviour just for that definition. See #8371, where we do this for Function.comp and Function.flip.This change in Lean may require further changes down the line (e.g. adding the !f syntax, and/or upstreaming the special treatment for Function.comp and Function.flip, and/or removing this special treatment). Please keep an open and skeptical mind about these changes!
Co-authored-by: leanprover-community-mathlib4-bot <leanprover-community-mathlib4-bot@users.noreply.github.com> Co-authored-by: Scott Morrison <scott.morrison@gmail.com> Co-authored-by: Eric Wieser <wieser.eric@gmail.com> Co-authored-by: Mauricio Collares <mauricio@collares.org>
@@ -322,7 +322,7 @@ theorem det_conj {N : Type*} [AddCommGroup N] [Module A N] (f : M →ₗ[A] M) (
contrapose! H
rcases H with ⟨s, ⟨b⟩⟩
exact ⟨_, ⟨(b.map e.symm).reindexFinsetRange⟩⟩
- simp only [coe_det, H, H', MonoidHom.one_apply, dif_neg]
+ simp only [coe_det, H, H', MonoidHom.one_apply, dif_neg, not_false_eq_true]
#align linear_map.det_conj LinearMap.det_conj
/-- If a linear map is invertible, so is its determinant. -/
@@ -419,8 +419,8 @@ theorem LinearEquiv.det_mul_det_symm {A : Type*} [CommRing A] [Module A M] (f :
/-- The determinants of a `LinearEquiv` and its inverse multiply to 1. -/
@[simp]
theorem LinearEquiv.det_symm_mul_det {A : Type*} [CommRing A] [Module A M] (f : M ≃ₗ[A] M) :
- LinearMap.det (f.symm : M →ₗ[A] M) * LinearMap.det (f : M →ₗ[A] M) = 1 :=
- by simp [← LinearMap.det_comp]
+ LinearMap.det (f.symm : M →ₗ[A] M) * LinearMap.det (f : M →ₗ[A] M) = 1 := by
+ simp [← LinearMap.det_comp]
#align linear_equiv.det_symm_mul_det LinearEquiv.det_symm_mul_det
-- Cannot be stated using `LinearMap.det` because `f` is not an endomorphism.
orientation.reindex (#6889)
This forward-ports leanprover-community/mathlib#19236
@@ -10,7 +10,7 @@ import Mathlib.Tactic.FieldSimp
import Mathlib.LinearAlgebra.Matrix.NonsingularInverse
import Mathlib.LinearAlgebra.Matrix.Basis
-#align_import linear_algebra.determinant from "leanprover-community/mathlib"@"bd65478311e4dfd41f48bf38c7e3b02fb75d0163"
+#align_import linear_algebra.determinant from "leanprover-community/mathlib"@"0c1d80f5a86b36c1db32e021e8d19ae7809d5b79"
/-!
# Determinant of families of vectors
@@ -616,6 +616,11 @@ theorem Basis.det_reindex {ι' : Type*} [Fintype ι'] [DecidableEq ι'] (b : Bas
rw [Basis.det_apply, Basis.toMatrix_reindex', det_reindexAlgEquiv, Basis.det_apply]
#align basis.det_reindex Basis.det_reindex
+theorem Basis.det_reindex' {ι' : Type*} [Fintype ι'] [DecidableEq ι'] (b : Basis ι R M)
+ (e : ι ≃ ι') : (b.reindex e).det = b.det.domDomCongr e :=
+ AlternatingMap.ext fun _ => Basis.det_reindex _ _ _
+#align basis.det_reindex' Basis.det_reindex'
+
theorem Basis.det_reindex_symm {ι' : Type*} [Fintype ι'] [DecidableEq ι'] (b : Basis ι R M)
(v : ι → M) (e : ι' ≃ ι) : (b.reindex e.symm).det (v ∘ e) = b.det v := by
rw [Basis.det_reindex, Function.comp.assoc, e.self_comp_symm, Function.comp.right_id]
MulZeroClass. in mul_zero/zero_mul (#6682)
Search&replace MulZeroClass.mul_zero -> mul_zero, MulZeroClass.zero_mul -> zero_mul.
These were introduced by Mathport, as the full name of mul_zero is actually MulZeroClass.mul_zero (it's exported with the short name).
@@ -650,7 +650,7 @@ theorem Basis.det_smul_mk_coord_eq_det_update {v : ι → M} (hli : LinearIndepe
MultilinearMap.toLinearMap_apply]
· rw [Basis.mk_coord_apply_eq, mul_one, update_eq_self]
congr
- · rw [Basis.mk_coord_apply_ne hik, MulZeroClass.mul_zero, eq_comm]
+ · rw [Basis.mk_coord_apply_ne hik, mul_zero, eq_comm]
exact e.det.map_eq_zero_of_eq _ (by simp [hik, Function.update_apply]) hik
#align basis.det_smul_mk_coord_eq_det_update Basis.det_smul_mk_coord_eq_det_update
⬝ notation in favor of HMul (#6487)
The main difficulty here is that * has a slightly difference precedence to ⬝. notably around smul and neg.
The other annoyance is that ↑U ⬝ A ⬝ ↑U⁻¹ : Matrix m m 𝔸 now has to be written U.val * A * (U⁻¹).val in order to typecheck.
A downside of this change to consider: if you have a goal of A * (B * C) = (A * B) * C, mul_assoc now gives the illusion of matching, when in fact Matrix.mul_assoc is needed. Previously the distinct symbol made it easy to avoid this mistake.
On the flipside, there is now no need to rewrite by Matrix.mul_eq_mul all the time (indeed, the lemma is now removed).
@@ -72,18 +72,18 @@ namespace Matrix
/-- If `M` and `M'` are each other's inverse matrices, they are square matrices up to
equivalence of types. -/
def indexEquivOfInv [Nontrivial A] [DecidableEq m] [DecidableEq n] {M : Matrix m n A}
- {M' : Matrix n m A} (hMM' : M ⬝ M' = 1) (hM'M : M' ⬝ M = 1) : m ≃ n :=
+ {M' : Matrix n m A} (hMM' : M * M' = 1) (hM'M : M' * M = 1) : m ≃ n :=
equivOfPiLEquivPi (toLin'OfInv hMM' hM'M)
#align matrix.index_equiv_of_inv Matrix.indexEquivOfInv
-theorem det_comm [DecidableEq n] (M N : Matrix n n A) : det (M ⬝ N) = det (N ⬝ M) := by
+theorem det_comm [DecidableEq n] (M N : Matrix n n A) : det (M * N) = det (N * M) := by
rw [det_mul, det_mul, mul_comm]
#align matrix.det_comm Matrix.det_comm
/-- If there exists a two-sided inverse `M'` for `M` (indexed differently),
-then `det (N ⬝ M) = det (M ⬝ N)`. -/
+then `det (N * M) = det (M * N)`. -/
theorem det_comm' [DecidableEq m] [DecidableEq n] {M : Matrix n m A} {N : Matrix m n A}
- {M' : Matrix m n A} (hMM' : M ⬝ M' = 1) (hM'M : M' ⬝ M = 1) : det (M ⬝ N) = det (N ⬝ M) := by
+ {M' : Matrix m n A} (hMM' : M * M' = 1) (hM'M : M' * M = 1) : det (M * N) = det (N * M) := by
nontriviality A
-- Although `m` and `n` are different a priori, we will show they have the same cardinality.
-- This turns the problem into one for square matrices, which is easy.
@@ -92,12 +92,12 @@ theorem det_comm' [DecidableEq m] [DecidableEq n] {M : Matrix n m A} {N : Matrix
submatrix_mul_equiv, Equiv.coe_refl, submatrix_id_id]
#align matrix.det_comm' Matrix.det_comm'
-/-- If `M'` is a two-sided inverse for `M` (indexed differently), `det (M ⬝ N ⬝ M') = det N`.
+/-- If `M'` is a two-sided inverse for `M` (indexed differently), `det (M * N * M') = det N`.
See `Matrix.det_conj` and `Matrix.det_conj'` for the case when `M' = M⁻¹` or vice versa. -/
theorem det_conj_of_mul_eq_one [DecidableEq m] [DecidableEq n] {M : Matrix m n A}
- {M' : Matrix n m A} {N : Matrix n n A} (hMM' : M ⬝ M' = 1) (hM'M : M' ⬝ M = 1) :
- det (M ⬝ N ⬝ M') = det N := by
+ {M' : Matrix n m A} {N : Matrix n n A} (hMM' : M * M' = 1) (hM'M : M' * M = 1) :
+ det (M * N * M') = det N := by
rw [← det_comm' hM'M hMM', ← Matrix.mul_assoc, hM'M, Matrix.one_mul]
#align matrix.det_conj_of_mul_eq_one Matrix.det_conj_of_mul_eq_one
@@ -452,13 +452,13 @@ def LinearEquiv.ofIsUnitDet {f : M →ₗ[R] M'} {v : Basis ι R M} {v' : Basis
invFun := toLin v' v (toMatrix v v' f)⁻¹
left_inv x :=
calc
- toLin v' v (toMatrix v v' f)⁻¹ (f x) = toLin v v ((toMatrix v v' f)⁻¹ ⬝ toMatrix v v' f) x :=
+ toLin v' v (toMatrix v v' f)⁻¹ (f x) = toLin v v ((toMatrix v v' f)⁻¹ * toMatrix v v' f) x :=
by rw [toLin_mul v v' v, toLin_toMatrix, LinearMap.comp_apply]
_ = x := by simp [h]
right_inv x :=
calc
f (toLin v' v (toMatrix v v' f)⁻¹ x) =
- toLin v' v' (toMatrix v v' f ⬝ (toMatrix v v' f)⁻¹) x :=
+ toLin v' v' (toMatrix v v' f * (toMatrix v v' f)⁻¹) x :=
by rw [toLin_mul v' v v', LinearMap.comp_apply, toLin_toMatrix v v']
_ = x := by simp [h]
#align linear_equiv.of_is_unit_det LinearEquiv.ofIsUnitDet
Type _ and Sort _ (#6499)
We remove all possible occurences of Type _ and Sort _ in favor of Type* and Sort*.
This has nice performance benefits.
@@ -46,24 +46,24 @@ open BigOperators Matrix LinearMap Submodule Set Function
universe u v w
-variable {R : Type _} [CommRing R]
+variable {R : Type*} [CommRing R]
-variable {M : Type _} [AddCommGroup M] [Module R M]
+variable {M : Type*} [AddCommGroup M] [Module R M]
-variable {M' : Type _} [AddCommGroup M'] [Module R M']
+variable {M' : Type*} [AddCommGroup M'] [Module R M']
-variable {ι : Type _} [DecidableEq ι] [Fintype ι]
+variable {ι : Type*} [DecidableEq ι] [Fintype ι]
variable (e : Basis ι R M)
section Conjugate
-variable {A : Type _} [CommRing A]
+variable {A : Type*} [CommRing A]
-variable {m n : Type _} [Fintype m] [Fintype n]
+variable {m n : Type*} [Fintype m] [Fintype n]
/-- If `R^m` and `R^n` are linearly equivalent, then `m` and `n` are also equivalent. -/
-def equivOfPiLEquivPi {R : Type _} [CommRing R] [Nontrivial R] (e : (m → R) ≃ₗ[R] n → R) : m ≃ n :=
+def equivOfPiLEquivPi {R : Type*} [CommRing R] [Nontrivial R] (e : (m → R) ≃ₗ[R] n → R) : m ≃ n :=
Basis.indexEquiv (Basis.ofEquivFun e.symm) (Pi.basisFun _ _)
#align equiv_of_pi_lequiv_pi equivOfPiLEquivPi
@@ -110,9 +110,9 @@ namespace LinearMap
/-! ### Determinant of a linear map -/
-variable {A : Type _} [CommRing A] [Module A M]
+variable {A : Type*} [CommRing A] [Module A M]
-variable {κ : Type _} [Fintype κ]
+variable {κ : Type*} [Fintype κ]
/-- The determinant of `LinearMap.toMatrix` does not depend on the choice of basis. -/
theorem det_toMatrix_eq_det_toMatrix [DecidableEq κ] (b : Basis ι A M) (c : Basis κ A M)
@@ -148,7 +148,7 @@ theorem detAux_def' (b : Basis ι A M) (f : M →ₗ[A] M) :
rfl
#align linear_map.det_aux_def LinearMap.detAux_def'
-theorem detAux_def'' {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (tb : Trunc <| Basis ι A M)
+theorem detAux_def'' {ι' : Type*} [Fintype ι'] [DecidableEq ι'] (tb : Trunc <| Basis ι A M)
(b' : Basis ι' A M) (f : M →ₗ[A] M) :
LinearMap.detAux tb f = Matrix.det (LinearMap.toMatrix b' b' f) := by
induction tb using Trunc.induction_on with
@@ -214,7 +214,7 @@ theorem det_toMatrix (b : Basis ι A M) (f : M →ₗ[A] M) :
#align linear_map.det_to_matrix LinearMap.det_toMatrix
@[simp]
-theorem det_toMatrix' {ι : Type _} [Fintype ι] [DecidableEq ι] (f : (ι → A) →ₗ[A] ι → A) :
+theorem det_toMatrix' {ι : Type*} [Fintype ι] [DecidableEq ι] (f : (ι → A) →ₗ[A] ι → A) :
Matrix.det (LinearMap.toMatrix' f) = LinearMap.det f := by simp [← toMatrix_eq_toMatrix']
#align linear_map.det_to_matrix' LinearMap.det_toMatrix'
@@ -256,7 +256,7 @@ theorem det_id : LinearMap.det (LinearMap.id : M →ₗ[A] M) = 1 :=
/-- Multiplying a map by a scalar `c` multiplies its determinant by `c ^ dim M`. -/
@[simp]
-theorem det_smul {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCommGroup M] [Module 𝕜 M] (c : 𝕜)
+theorem det_smul {𝕜 : Type*} [Field 𝕜] {M : Type*} [AddCommGroup M] [Module 𝕜 M] (c : 𝕜)
(f : M →ₗ[𝕜] M) :
LinearMap.det (c • f) = c ^ FiniteDimensional.finrank 𝕜 M * LinearMap.det f := by
by_cases H : ∃ s : Finset M, Nonempty (Basis s 𝕜 M)
@@ -270,7 +270,7 @@ theorem det_smul {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCommGroup M] [Mod
simp [coe_det, H, this]
#align linear_map.det_smul LinearMap.det_smul
-theorem det_zero' {ι : Type _} [Finite ι] [Nonempty ι] (b : Basis ι A M) :
+theorem det_zero' {ι : Type*} [Finite ι] [Nonempty ι] (b : Basis ι A M) :
LinearMap.det (0 : M →ₗ[A] M) = 0 := by
haveI := Classical.decEq ι
cases nonempty_fintype ι
@@ -281,7 +281,7 @@ theorem det_zero' {ι : Type _} [Finite ι] [Nonempty ι] (b : Basis ι A M) :
and `0` otherwise. We give a formula that also works in infinite dimension, where we define
the determinant to be `1`. -/
@[simp]
-theorem det_zero {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCommGroup M] [Module 𝕜 M] :
+theorem det_zero {𝕜 : Type*} [Field 𝕜] {M : Type*} [AddCommGroup M] [Module 𝕜 M] :
LinearMap.det (0 : M →ₗ[𝕜] M) = (0 : 𝕜) ^ FiniteDimensional.finrank 𝕜 M := by
simp only [← zero_smul 𝕜 (1 : M →ₗ[𝕜] M), det_smul, mul_one, MonoidHom.map_one]
#align linear_map.det_zero LinearMap.det_zero
@@ -293,7 +293,7 @@ theorem det_eq_one_of_subsingleton [Subsingleton M] (f : M →ₗ[R] M) :
exact Matrix.det_isEmpty
#align linear_map.det_eq_one_of_subsingleton LinearMap.det_eq_one_of_subsingleton
-theorem det_eq_one_of_finrank_eq_zero {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCommGroup M]
+theorem det_eq_one_of_finrank_eq_zero {𝕜 : Type*} [Field 𝕜] {M : Type*} [AddCommGroup M]
[Module 𝕜 M] (h : FiniteDimensional.finrank 𝕜 M = 0) (f : M →ₗ[𝕜] M) :
LinearMap.det (f : M →ₗ[𝕜] M) = 1 := by
classical
@@ -307,7 +307,7 @@ theorem det_eq_one_of_finrank_eq_zero {𝕜 : Type _} [Field 𝕜] {M : Type _}
/-- Conjugating a linear map by a linear equiv does not change its determinant. -/
@[simp]
-theorem det_conj {N : Type _} [AddCommGroup N] [Module A N] (f : M →ₗ[A] M) (e : M ≃ₗ[A] N) :
+theorem det_conj {N : Type*} [AddCommGroup N] [Module A N] (f : M →ₗ[A] M) (e : M ≃ₗ[A] N) :
LinearMap.det ((e : M →ₗ[A] N) ∘ₗ f ∘ₗ (e.symm : N →ₗ[A] M)) = LinearMap.det f := by
classical
by_cases H : ∃ s : Finset M, Nonempty (Basis s A M)
@@ -326,7 +326,7 @@ theorem det_conj {N : Type _} [AddCommGroup N] [Module A N] (f : M →ₗ[A] M)
#align linear_map.det_conj LinearMap.det_conj
/-- If a linear map is invertible, so is its determinant. -/
-theorem isUnit_det {A : Type _} [CommRing A] [Module A M] (f : M →ₗ[A] M) (hf : IsUnit f) :
+theorem isUnit_det {A : Type*} [CommRing A] [Module A M] (f : M →ₗ[A] M) (hf : IsUnit f) :
IsUnit (LinearMap.det f) := by
obtain ⟨g, hg⟩ : ∃ g, f.comp g = 1 := hf.exists_right_inv
have : LinearMap.det f * LinearMap.det g = 1 := by
@@ -335,7 +335,7 @@ theorem isUnit_det {A : Type _} [CommRing A] [Module A M] (f : M →ₗ[A] M) (h
#align linear_map.is_unit_det LinearMap.isUnit_det
/-- If a linear map has determinant different from `1`, then the space is finite-dimensional. -/
-theorem finiteDimensional_of_det_ne_one {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] (f : M →ₗ[𝕜] M)
+theorem finiteDimensional_of_det_ne_one {𝕜 : Type*} [Field 𝕜] [Module 𝕜 M] (f : M →ₗ[𝕜] M)
(hf : LinearMap.det f ≠ 1) : FiniteDimensional 𝕜 M := by
by_cases H : ∃ s : Finset M, Nonempty (Basis s 𝕜 M)
· rcases H with ⟨s, ⟨hs⟩⟩
@@ -344,7 +344,7 @@ theorem finiteDimensional_of_det_ne_one {𝕜 : Type _} [Field 𝕜] [Module
#align linear_map.finite_dimensional_of_det_ne_one LinearMap.finiteDimensional_of_det_ne_one
/-- If the determinant of a map vanishes, then the map is not onto. -/
-theorem range_lt_top_of_det_eq_zero {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] {f : M →ₗ[𝕜] M}
+theorem range_lt_top_of_det_eq_zero {𝕜 : Type*} [Field 𝕜] [Module 𝕜 M] {f : M →ₗ[𝕜] M}
(hf : LinearMap.det f = 0) : LinearMap.range f < ⊤ := by
have : FiniteDimensional 𝕜 M := by simp [f.finiteDimensional_of_det_ne_one, hf]
contrapose hf
@@ -353,7 +353,7 @@ theorem range_lt_top_of_det_eq_zero {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M]
#align linear_map.range_lt_top_of_det_eq_zero LinearMap.range_lt_top_of_det_eq_zero
/-- If the determinant of a map vanishes, then the map is not injective. -/
-theorem bot_lt_ker_of_det_eq_zero {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] {f : M →ₗ[𝕜] M}
+theorem bot_lt_ker_of_det_eq_zero {𝕜 : Type*} [Field 𝕜] [Module 𝕜 M] {f : M →ₗ[𝕜] M}
(hf : LinearMap.det f = 0) : ⊥ < LinearMap.ker f := by
have : FiniteDimensional 𝕜 M := by simp [f.finiteDimensional_of_det_ne_one, hf]
contrapose hf
@@ -411,14 +411,14 @@ end LinearEquiv
/-- The determinants of a `LinearEquiv` and its inverse multiply to 1. -/
@[simp]
-theorem LinearEquiv.det_mul_det_symm {A : Type _} [CommRing A] [Module A M] (f : M ≃ₗ[A] M) :
+theorem LinearEquiv.det_mul_det_symm {A : Type*} [CommRing A] [Module A M] (f : M ≃ₗ[A] M) :
LinearMap.det (f : M →ₗ[A] M) * LinearMap.det (f.symm : M →ₗ[A] M) = 1 := by
simp [← LinearMap.det_comp]
#align linear_equiv.det_mul_det_symm LinearEquiv.det_mul_det_symm
/-- The determinants of a `LinearEquiv` and its inverse multiply to 1. -/
@[simp]
-theorem LinearEquiv.det_symm_mul_det {A : Type _} [CommRing A] [Module A M] (f : M ≃ₗ[A] M) :
+theorem LinearEquiv.det_symm_mul_det {A : Type*} [CommRing A] [Module A M] (f : M ≃ₗ[A] M) :
LinearMap.det (f.symm : M →ₗ[A] M) * LinearMap.det (f : M →ₗ[A] M) = 1 :=
by simp [← LinearMap.det_comp]
#align linear_equiv.det_symm_mul_det LinearEquiv.det_symm_mul_det
@@ -431,13 +431,13 @@ theorem LinearEquiv.isUnit_det (f : M ≃ₗ[R] M') (v : Basis ι R M) (v' : Bas
#align linear_equiv.is_unit_det LinearEquiv.isUnit_det
/-- Specialization of `LinearEquiv.isUnit_det` -/
-theorem LinearEquiv.isUnit_det' {A : Type _} [CommRing A] [Module A M] (f : M ≃ₗ[A] M) :
+theorem LinearEquiv.isUnit_det' {A : Type*} [CommRing A] [Module A M] (f : M ≃ₗ[A] M) :
IsUnit (LinearMap.det (f : M →ₗ[A] M)) :=
isUnit_of_mul_eq_one _ _ f.det_mul_det_symm
#align linear_equiv.is_unit_det' LinearEquiv.isUnit_det'
/-- The determinant of `f.symm` is the inverse of that of `f` when `f` is a linear equiv. -/
-theorem LinearEquiv.det_coe_symm {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] (f : M ≃ₗ[𝕜] M) :
+theorem LinearEquiv.det_coe_symm {𝕜 : Type*} [Field 𝕜] [Module 𝕜 M] (f : M ≃ₗ[𝕜] M) :
LinearMap.det (f.symm : M →ₗ[𝕜] M) = (LinearMap.det (f : M →ₗ[𝕜] M))⁻¹ := by
field_simp [IsUnit.ne_zero f.isUnit_det']
#align linear_equiv.det_coe_symm LinearEquiv.det_coe_symm
@@ -474,7 +474,7 @@ theorem LinearEquiv.coe_ofIsUnitDet {f : M →ₗ[R] M'} {v : Basis ι R M} {v'
/-- Builds a linear equivalence from a linear map on a finite-dimensional vector space whose
determinant is nonzero. -/
@[reducible]
-def LinearMap.equivOfDetNeZero {𝕜 : Type _} [Field 𝕜] {M : Type _} [AddCommGroup M] [Module 𝕜 M]
+def LinearMap.equivOfDetNeZero {𝕜 : Type*} [Field 𝕜] {M : Type*} [AddCommGroup M] [Module 𝕜 M]
[FiniteDimensional 𝕜 M] (f : M →ₗ[𝕜] M) (hf : LinearMap.det f ≠ 0) : M ≃ₗ[𝕜] M :=
have : IsUnit (LinearMap.toMatrix (FiniteDimensional.finBasis 𝕜 M)
(FiniteDimensional.finBasis 𝕜 M) f).det := by
@@ -493,7 +493,7 @@ theorem LinearMap.associated_det_of_eq_comp (e : M ≃ₗ[R] M) (f f' : M →ₗ
exact Associated.mul_left _ (associated_one_iff_isUnit.mpr e.isUnit_det')
#align linear_map.associated_det_of_eq_comp LinearMap.associated_det_of_eq_comp
-theorem LinearMap.associated_det_comp_equiv {N : Type _} [AddCommGroup N] [Module R N]
+theorem LinearMap.associated_det_comp_equiv {N : Type*} [AddCommGroup N] [Module R N]
(f : N →ₗ[R] M) (e e' : M ≃ₗ[R] N) :
Associated (LinearMap.det (f ∘ₗ ↑e)) (LinearMap.det (f ∘ₗ ↑e')) := by
refine' LinearMap.associated_det_of_eq_comp (e.trans e'.symm) _ _ _
@@ -578,7 +578,7 @@ theorem AlternatingMap.eq_smul_basis_det (f : AlternatingMap R M R ι) : f = f e
#align alternating_map.eq_smul_basis_det AlternatingMap.eq_smul_basis_det
@[simp]
-theorem AlternatingMap.map_basis_eq_zero_iff {ι : Type _} [Finite ι] (e : Basis ι R M)
+theorem AlternatingMap.map_basis_eq_zero_iff {ι : Type*} [Finite ι] (e : Basis ι R M)
(f : AlternatingMap R M R ι) : f e = 0 ↔ f = 0 :=
⟨fun h => by
cases nonempty_fintype ι
@@ -587,12 +587,12 @@ theorem AlternatingMap.map_basis_eq_zero_iff {ι : Type _} [Finite ι] (e : Basi
fun h => h.symm ▸ AlternatingMap.zero_apply _⟩
#align alternating_map.map_basis_eq_zero_iff AlternatingMap.map_basis_eq_zero_iff
-theorem AlternatingMap.map_basis_ne_zero_iff {ι : Type _} [Finite ι] (e : Basis ι R M)
+theorem AlternatingMap.map_basis_ne_zero_iff {ι : Type*} [Finite ι] (e : Basis ι R M)
(f : AlternatingMap R M R ι) : f e ≠ 0 ↔ f ≠ 0 :=
not_congr <| f.map_basis_eq_zero_iff e
#align alternating_map.map_basis_ne_zero_iff AlternatingMap.map_basis_ne_zero_iff
-variable {A : Type _} [CommRing A] [Module A M]
+variable {A : Type*} [CommRing A] [Module A M]
@[simp]
theorem Basis.det_comp (e : Basis ι A M) (f : M →ₗ[A] M) (v : ι → M) :
@@ -611,12 +611,12 @@ theorem Basis.det_comp_basis [Module A M'] (b : Basis ι A M) (b' : Basis ι A M
rw [Basis.toMatrix_apply, LinearMap.toMatrix_apply, Function.comp_apply]
#align basis.det_comp_basis Basis.det_comp_basis
-theorem Basis.det_reindex {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (b : Basis ι R M) (v : ι' → M)
+theorem Basis.det_reindex {ι' : Type*} [Fintype ι'] [DecidableEq ι'] (b : Basis ι R M) (v : ι' → M)
(e : ι ≃ ι') : (b.reindex e).det v = b.det (v ∘ e) := by
rw [Basis.det_apply, Basis.toMatrix_reindex', det_reindexAlgEquiv, Basis.det_apply]
#align basis.det_reindex Basis.det_reindex
-theorem Basis.det_reindex_symm {ι' : Type _} [Fintype ι'] [DecidableEq ι'] (b : Basis ι R M)
+theorem Basis.det_reindex_symm {ι' : Type*} [Fintype ι'] [DecidableEq ι'] (b : Basis ι R M)
(v : ι → M) (e : ι' ≃ ι) : (b.reindex e.symm).det (v ∘ e) = b.det v := by
rw [Basis.det_reindex, Function.comp.assoc, e.self_comp_symm, Function.comp.right_id]
#align basis.det_reindex_symm Basis.det_reindex_symm
open Classical (#6320)
This uncovers a few situations where a lemma was stated with the wrong decidability assumption. The corrected lemmas are strictly more syntactically-general.
This is exhaustive in the LinearAlgebra folder.
Where removal is impractical, this switches to open Classical in to make the intent clear.
@@ -168,8 +168,7 @@ theorem detAux_comp (b : Trunc <| Basis ι A M) (f g : M →ₗ[A] M) :
section
-open Classical
-
+open scoped Classical in
-- Discourage the elaborator from unfolding `det` and producing a huge term by marking it
-- as irreducible.
/-- The determinant of an endomorphism independent of basis.
@@ -181,6 +180,7 @@ protected irreducible_def det : (M →ₗ[A] M) →* A :=
else 1
#align linear_map.det LinearMap.det
+open scoped Classical in
theorem coe_det [DecidableEq M] :
⇑(LinearMap.det : (M →ₗ[A] M) →* A) =
if H : ∃ s : Finset M, Nonempty (Basis s A M) then
@@ -2,11 +2,6 @@
Copyright (c) 2019 Johannes Hölzl. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Johannes Hölzl, Patrick Massot, Casper Putz, Anne Baanen
-
-! This file was ported from Lean 3 source module linear_algebra.determinant
-! leanprover-community/mathlib commit bd65478311e4dfd41f48bf38c7e3b02fb75d0163
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathlib.LinearAlgebra.FiniteDimensional
import Mathlib.LinearAlgebra.GeneralLinearGroup
@@ -15,6 +10,8 @@ import Mathlib.Tactic.FieldSimp
import Mathlib.LinearAlgebra.Matrix.NonsingularInverse
import Mathlib.LinearAlgebra.Matrix.Basis
+#align_import linear_algebra.determinant from "leanprover-community/mathlib"@"bd65478311e4dfd41f48bf38c7e3b02fb75d0163"
+
/-!
# Determinant of families of vectors
ext (#5258)
Co-authored-by: Xavier Roblot <46200072+xroblot@users.noreply.github.com> Co-authored-by: Joël Riou <joel.riou@universite-paris-saclay.fr> Co-authored-by: Riccardo Brasca <riccardo.brasca@gmail.com> Co-authored-by: Yury G. Kudryashov <urkud@urkud.name> Co-authored-by: Scott Morrison <scott.morrison@anu.edu.au> Co-authored-by: Scott Morrison <scott.morrison@gmail.com> Co-authored-by: Jeremy Tan Jie Rui <reddeloostw@gmail.com> Co-authored-by: Pol'tta / Miyahara Kō <pol_tta@outlook.jp> Co-authored-by: Jason Yuen <jason_yuen2007@hotmail.com> Co-authored-by: Mario Carneiro <di.gama@gmail.com> Co-authored-by: Jireh Loreaux <loreaujy@gmail.com> Co-authored-by: Ruben Van de Velde <65514131+Ruben-VandeVelde@users.noreply.github.com> Co-authored-by: Kyle Miller <kmill31415@gmail.com> Co-authored-by: Heather Macbeth <25316162+hrmacbeth@users.noreply.github.com> Co-authored-by: Jujian Zhang <jujian.zhang1998@outlook.com> Co-authored-by: Yaël Dillies <yael.dillies@gmail.com>
@@ -555,7 +555,7 @@ theorem is_basis_iff_det {v : ι → M} :
set v' := Basis.mk hli hspan.ge
rw [e.det_apply]
convert LinearEquiv.isUnit_det (LinearEquiv.refl R M) v' e using 2
- ext (i j)
+ ext i j
simp
· intro h
rw [Basis.det_apply, Basis.toMatrix_eq_toMatrix_constr] at h
@@ -610,7 +610,7 @@ theorem Basis.det_comp_basis [Module A M'] (b : Basis ι A M) (b' : Basis ι A M
b'.det (f ∘ b) = LinearMap.det (f ∘ₗ (b'.equiv b (Equiv.refl ι) : M' →ₗ[A] M)) := by
rw [Basis.det_apply, ← LinearMap.det_toMatrix b', LinearMap.toMatrix_comp _ b, Matrix.det_mul,
LinearMap.toMatrix_basis_equiv, Matrix.det_one, mul_one]
- congr 1; ext (i j)
+ congr 1; ext i j
rw [Basis.toMatrix_apply, LinearMap.toMatrix_apply, Function.comp_apply]
#align basis.det_comp_basis Basis.det_comp_basis
ι an explicit arg of AlternatingMap.constOfIsEmpty (#4510)
Forward-port leanprover-community/mathlib#19123
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: Johannes Hölzl, Patrick Massot, Casper Putz, Anne Baanen
! This file was ported from Lean 3 source module linear_algebra.determinant
-! leanprover-community/mathlib commit b1c23399f01266afe392a0d8f71f599a0dad4f7b
+! leanprover-community/mathlib commit bd65478311e4dfd41f48bf38c7e3b02fb75d0163
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
@@ -539,7 +539,7 @@ theorem Basis.det_self : e.det e = 1 := by simp [e.det_apply]
#align basis.det_self Basis.det_self
@[simp]
-theorem Basis.det_isEmpty [IsEmpty ι] : e.det = AlternatingMap.constOfIsEmpty R M 1 := by
+theorem Basis.det_isEmpty [IsEmpty ι] : e.det = AlternatingMap.constOfIsEmpty R M ι 1 := by
ext v
exact Matrix.det_isEmpty
#align basis.det_is_empty Basis.det_isEmpty
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>
@@ -65,7 +65,6 @@ variable {A : Type _} [CommRing A]
variable {m n : Type _} [Fintype m] [Fintype n]
-set_option synthInstance.etaExperiment true in
/-- If `R^m` and `R^n` are linearly equivalent, then `m` and `n` are also equivalent. -/
def equivOfPiLEquivPi {R : Type _} [CommRing R] [Nontrivial R] (e : (m → R) ≃ₗ[R] n → R) : m ≃ n :=
Basis.indexEquiv (Basis.ofEquivFun e.symm) (Pi.basisFun _ _)
@@ -126,7 +125,6 @@ theorem det_toMatrix_eq_det_toMatrix [DecidableEq κ] (b : Basis ι A M) (c : Ba
rw [Basis.toMatrix_mul_toMatrix, Basis.toMatrix_self]
#align linear_map.det_to_matrix_eq_det_to_matrix LinearMap.det_toMatrix_eq_det_toMatrix
-set_option synthInstance.etaExperiment true
/-- The determinant of an endomorphism given a basis.
@@ -368,7 +366,6 @@ theorem bot_lt_ker_of_det_eq_zero {𝕜 : Type _} [Field 𝕜] [Module 𝕜 M] {
end LinearMap
-set_option synthInstance.etaExperiment true
namespace LinearEquiv
@@ -399,7 +396,6 @@ theorem det_trans (f g : M ≃ₗ[R] M) :
map_mul _ g f
#align linear_equiv.det_trans LinearEquiv.det_trans
--- Porting note: The lint can't use `synthInstance.etaExperiment`.
@[simp, nolint simpNF]
theorem det_symm (f : M ≃ₗ[R] M) : LinearEquiv.det f.symm = LinearEquiv.det f⁻¹ :=
map_inv _ f
@@ -478,12 +474,6 @@ theorem LinearEquiv.coe_ofIsUnitDet {f : M →ₗ[R] M'} {v : Basis ι R M} {v'
rfl
#align linear_equiv.coe_of_is_unit_det LinearEquiv.coe_ofIsUnitDet
--- Porting note: The next line should be deleted in future.
--- The problem here is a slow `isDefEq` problem:
--- [Meta.isDefEq] [8.157421s] ✅ Matrix.det
--- (↑(LinearMap.toMatrix (FiniteDimensional.finBasis 𝕜 M) (FiniteDimensional.finBasis 𝕜 M))
--- f) =?= Matrix.det (↑(LinearMap.toMatrix ?b ?b) ?f) ▶
-set_option maxHeartbeats 300000 in
/-- Builds a linear equivalence from a linear map on a finite-dimensional vector space whose
determinant is nonzero. -/
@[reducible]
Co-authored-by: int-y1 <jason_yuen2007@hotmail.com> Co-authored-by: Komyyy <pol_tta@outlook.jp> Co-authored-by: Scott Morrison <scott.morrison@gmail.com> Co-authored-by: Ruben Van de Velde <65514131+Ruben-VandeVelde@users.noreply.github.com> Co-authored-by: Eric Wieser <wieser.eric@gmail.com>
The unported dependencies are